111
This commit is contained in:
266
character/atmage/tundrasoul/ap_atmage_tundrasoul.nut
Normal file
266
character/atmage/tundrasoul/ap_atmage_tundrasoul.nut
Normal file
@@ -0,0 +1,266 @@
|
||||
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
function enableAuraEffect_AuraTundraSoul(appendage, target)
|
||||
{
|
||||
//print(" auratundra");
|
||||
|
||||
local isAppend = CNSquirrelAppendage.sq_IsAppendAppendage(target, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut");
|
||||
|
||||
print( "isAppend:" + isAppend);
|
||||
|
||||
local parentObject = appendage.getParent();
|
||||
local parentObj = sq_ObjectToSQRCharacter(parentObject);
|
||||
|
||||
if(!parentObj)
|
||||
return;
|
||||
|
||||
if(isAppend)
|
||||
{
|
||||
if(sq_IsValidActiveStatus(target, ACTIVESTATUS_FREEZE) || !parentObj.isInBattle())
|
||||
{
|
||||
CNSquirrelAppendage.sq_RemoveAppendage(target, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
local appendage = CNSquirrelAppendage.sq_AppendAppendage(target, parentObj, SKILL_TUNDRASOUL, false,
|
||||
"Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut", true);
|
||||
|
||||
local skillLevel = parentObj.sq_GetSkillLevel(SKILL_TUNDRASOUL);
|
||||
// 0.橡晦梱虽 勘葬朝 卫除 1.彩念溯涟 2.彩念?徽 3.彩念卫除 4.橡横毡朝 瞳 跷陛 等嘐虽
|
||||
local frozenWaitTime = parentObj.sq_GetLevelData(SKILL_TUNDRASOUL, 0, skillLevel); // 0.橡晦梱虽 勘葬朝 卫除
|
||||
local frozenLevel = parentObj.sq_GetLevelData(SKILL_TUNDRASOUL, 1, skillLevel); // 1.彩念溯涟
|
||||
local frozenRate = parentObj.sq_GetLevelData(SKILL_TUNDRASOUL, 2, skillLevel); // 2.彩念?徽
|
||||
local frozenTime = parentObj.sq_GetLevelData(SKILL_TUNDRASOUL, 3, skillLevel); // 3.彩念卫除
|
||||
local frozenAddDamageRate = parentObj.sq_GetLevelData(SKILL_TUNDRASOUL, 4, skillLevel); // 4.橡横毡朝 瞳 跷陛 等嘐虽
|
||||
|
||||
appendage.getVar("skl").clear_vector();
|
||||
appendage.getVar("skl").push_vector(frozenWaitTime);
|
||||
appendage.getVar("skl").push_vector(frozenLevel);
|
||||
appendage.getVar("skl").push_vector(frozenRate);
|
||||
appendage.getVar("skl").push_vector(frozenTime);
|
||||
appendage.getVar("skl").push_vector(frozenAddDamageRate);
|
||||
}
|
||||
|
||||
function disableAuraEffect_AuraTundraSoul(appendage, target)
|
||||
{
|
||||
if(!sq_IsValidActiveStatus(target, ACTIVESTATUS_FREEZE))
|
||||
{
|
||||
CNSquirrelAppendage.sq_RemoveAppendage(target, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut");
|
||||
}
|
||||
//print(" disable");
|
||||
|
||||
}
|
||||
|
||||
function isInAuraRange_AuraTundraSoul(appendage, target)
|
||||
{
|
||||
//print(" \n aa:" + target);
|
||||
if(sq_IsValidActiveStatus(target, ACTIVESTATUS_FREEZE))
|
||||
{
|
||||
local isAppend = CNSquirrelAppendage.sq_IsAppendAppendage(target, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut");
|
||||
|
||||
if(isAppend)
|
||||
{
|
||||
//CNSquirrelAppendage.sq_RemoveAppendage(target, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoulCS.nut");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
if(!sq_IsInBattle())
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
function sq_AddFunctionName(appendage)
|
||||
{
|
||||
appendage.sq_AddFunctionName("proc", "proc_appendage_atmage_tundrasoul")
|
||||
appendage.sq_AddFunctionName("prepareDraw", "prepareDraw_appendage_atmage_tundrasoul")
|
||||
appendage.sq_AddFunctionName("onStart", "onStart_appendage_atmage_tundrasoul")
|
||||
appendage.sq_AddFunctionName("onEnd", "onEnd_appendage_atmage_tundrasoul")
|
||||
appendage.sq_AddFunctionName("isEnd", "isEnd_appendage_atmage_tundrasoul")
|
||||
appendage.sq_AddFunctionName("onSetHp", "onSetHp_appendage_atmage_tundrasoul")
|
||||
}
|
||||
|
||||
|
||||
function sq_AddEffect(appendage)
|
||||
{
|
||||
}
|
||||
|
||||
function proc_appendage_atmage_tundrasoul(appendage)
|
||||
{
|
||||
if(!appendage) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
local parentObj = appendage.getParent();
|
||||
local currentT = appendage.getTimer().Get();
|
||||
local rebirthTime_ = appendage.sq_var.get_vector(VECTOR_I_REBIRTH_TIME);
|
||||
|
||||
if(!parentObj)
|
||||
{
|
||||
appendage.setValid(false);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
local parentChr = sq_GetCNRDObjectToSQRCharacter(parentObj);
|
||||
|
||||
if(!parentChr)
|
||||
{
|
||||
appendage.setValid(false);
|
||||
return;
|
||||
}
|
||||
|
||||
local skill = sq_GetSkill(parentChr, SKILL_TUNDRASOUL);
|
||||
|
||||
if(skill)
|
||||
{
|
||||
local auraAppendage = 0;
|
||||
local appendage = CNSquirrelAppendage.sq_GetAppendage(parentChr, "Character/ATMage/TundraSoul/ap_ATMage_TundraSoul.nut");
|
||||
|
||||
if(appendage)
|
||||
{
|
||||
auraAppendage = appendage.sq_getSquirrelAuraMaster("AuraTundraSoul");
|
||||
}
|
||||
|
||||
if(!parentChr.isInBattle())
|
||||
{ // 瞪潍酝桧 嬴栖塭贼.. on桧苌 off苌 鼠亵勒 aura ?娄蒂 疏捡?栖棻.
|
||||
if(auraAppendage)
|
||||
{
|
||||
if(parentChr.isMyControlObject())
|
||||
{
|
||||
sq_BinaryStartWrite();
|
||||
sq_BinaryWriteDword(1); //
|
||||
sq_SendChangeSkillEffectPacket(parentChr, SKILL_TUNDRASOUL);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // 瞪潍酝桧塭贼..
|
||||
|
||||
if(skill.isSealFunction())
|
||||
{ // off樯等 嬴办塭陛 毡戏贼 疏捡?栖棻.
|
||||
if(auraAppendage)
|
||||
{
|
||||
//print(" parentChr.isInBattle():" + parentChr.isInBattle() + " auraAppendage:" + auraAppendage);
|
||||
if(parentChr.isMyControlObject())
|
||||
{
|
||||
sq_BinaryStartWrite();
|
||||
sq_BinaryWriteDword(1); //
|
||||
sq_SendChangeSkillEffectPacket(parentChr, SKILL_TUNDRASOUL);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // on樯等 嬴办塭陛 桡戏贼 面捡?栖棻.
|
||||
if(parentObj.getState() == STATE_DIE) // 避擎鼻鹧塭贼 嬴办塭蒂 橾钦 疏捡?栖棻.
|
||||
{
|
||||
if(auraAppendage)
|
||||
{
|
||||
if(parentChr.isMyControlObject())
|
||||
{
|
||||
sq_BinaryStartWrite();
|
||||
sq_BinaryWriteDword(1); //
|
||||
sq_SendChangeSkillEffectPacket(parentChr, SKILL_TUNDRASOUL);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(!auraAppendage)
|
||||
{
|
||||
if(parentChr.isMyControlObject())
|
||||
{
|
||||
//print(" parentChr.isInBattle():" + parentChr.isInBattle() + " auraAppendage:" + auraAppendage);
|
||||
sq_BinaryStartWrite();
|
||||
sq_BinaryWriteDword(0); //
|
||||
sq_SendChangeSkillEffectPacket(parentChr, SKILL_TUNDRASOUL);
|
||||
}
|
||||
}
|
||||
else
|
||||
{ // 嬴办塭陛 毡棻朝 鼻鹧桧虽虏 valid陛 false橾 热 毡蝗栖棻.
|
||||
if(!auraAppendage.isValid())
|
||||
{ // 嬴办塭陛 isvalid陛 false塭贼.. 橾钦 虽表捡?栖棻.
|
||||
print( " \n\n valid:" + auraAppendage.isValid());
|
||||
sq_BinaryStartWrite();
|
||||
sq_BinaryWriteDword(1); //
|
||||
sq_SendChangeSkillEffectPacket(parentChr, SKILL_TUNDRASOUL);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
function onStart_appendage_atmage_tundrasoul(appendage)
|
||||
{
|
||||
if(!appendage) {
|
||||
return;
|
||||
}
|
||||
|
||||
local obj = appendage.getParent();
|
||||
|
||||
|
||||
appendage.sq_var.clear_timer_vector();
|
||||
appendage.sq_var.push_timer_vector();
|
||||
appendage.sq_var.push_timer_vector();
|
||||
|
||||
appendage.sq_var.clear_vector();
|
||||
appendage.sq_var.push_vector(0); // state
|
||||
|
||||
local t = appendage.sq_var.get_timer_vector(0);
|
||||
t.setParameter(400, -1);
|
||||
t.resetInstant(0);
|
||||
|
||||
local sqrObj = sq_GetCNRDObjectToSQRCharacter(obj);
|
||||
|
||||
if(sqrObj)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function prepareDraw_appendage_atmage_tundrasoul(appendage)
|
||||
{
|
||||
if(!appendage) {
|
||||
return;
|
||||
}
|
||||
|
||||
local obj = appendage.getParent();
|
||||
}
|
||||
|
||||
function onEnd_appendage_atmage_tundrasoul(appendage)
|
||||
{
|
||||
if(!appendage) {
|
||||
return;
|
||||
}
|
||||
|
||||
local obj = appendage.getParent();
|
||||
|
||||
local sqrObj = sq_GetCNRDObjectToSQRCharacter(obj);
|
||||
|
||||
if(sqrObj)
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 横渐螳 陕撩 渗褐暧 部睡碟
|
||||
function isEnd_appendage_atmage_tundrasoul(appendage)
|
||||
{
|
||||
if(!appendage)
|
||||
return false;
|
||||
|
||||
local T = appendage.getTimer().Get();
|
||||
|
||||
return false;
|
||||
}
|
||||
Reference in New Issue
Block a user