// state蒂 撮??坚 籀挤戏煎 菟横螃啪 腌栖棻. 陕谦 葬模蝶蒂 撮??栖棻. function onSetState_AwakenningTurnOff(obj, state, datas, isResetTimer) { if(!obj) return; local substate = obj.sq_getVectorData(datas, 0); // 罗廓箪 substate殓栖棻.. obj.setSkillSubState(substate); //set substate obj.sq_stopMove(); local posX = obj.getXPos(); local posY = obj.getYPos(); local posZ = obj.getZPos(); local sq_var = obj.getVar(); if(obj.getVar("takingAwakenSkillBack").size_vector() > 0) { obj.getVar("takingAwakenSkillBack").set_vector(0, 0); } sq_var.clear_vector(); sq_var.push_vector(0); local appendage = obj.GetSquirrelAppendage("Appendage/Character/ap_avenger_awakening.nut"); if(appendage) { if(appendage.isValid()) { appendage.setValid(false); } // 葬橡 寨葬萄 ?楚斜煎 噩 詹帼殓栖棻.. 谒 桧楛冲桧 腑傍贼.. // 横渐荡陛 state_stand鼻鹧缣怃虏 渗褐?薯陛 肾横捡 ?栖棻 // 斜楚怃 valid陛 false陛 胀棻坚 ?怃 埠潍 渗褐?薯 腑棻坚 除舆?怃朝 寰腌栖棻 罹楝寞彻击 当陕?鱼 念娄 桧 寞彻桧 陛潍 梃莠?剪 伪嬴怃 殓栖棻.. // 该 噙桧朝 够紫 桡戏栖梱 appendage.sq_var.set_vector(I_AVENGER_AWAKENING_VALID, 0); obj.setObjectHeight(-1); } if(substate == 0) { //obj.sq_setCurrentAnimation(CUSTOM_ANI_AWAKENING_TURN_OFF); local turn_off_ani = obj.getVar().GetAnimationMap("AWAKENING_TURN_OFF", "Character/Priest/Animation/AwakeningTurnoff.ani"); // 蝶监嬴夥颤 阳侥缣 谖睡缣怃 拥栖诡桧暮击 陛虽坚 谛捡 ?栖棻.. obj.setCurrentAnimation(turn_off_ani); } else if(substate == 1) { obj.sq_setCurrentAnimation(CUSTOM_ANI_AWAKENING_TURN_OFF_2); //if(sq_var.get_vector(0) == 0) { // sq_var.set_vector(0, 1); //才嬴釭 嵘葬枭虽朝 ?娄 local particleCreater = sq_var.GetparticleCreaterMap("BellatrixGlass", "Character/Priest/Effect/Particle/AwakeningTurnOff.ptl", obj); particleCreater.Restart(0); //local dstX = sq_GetDistancePos(posX, obj.getDirection(), -20); particleCreater.SetPos(posX, posY + 2, posZ+70); sq_AddParticleObject(obj, particleCreater); //} } } // prepareDraw ?热 殓栖棻.. function prepareDraw_AwakenningTurnOff(obj) { if(!obj) return; } // loop 睡碟殓栖棻 ismycontrol煎 马谆虽 强擎 翱念胀 赅苌 object菟桧 桧够击 剪纂啪腌栖棻. function onProc_AwakenningTurnOff(obj) { if(!obj) return; local substate = obj.getSkillSubState(); local posX = obj.getXPos(); local posY = obj.getYPos(); local posZ = obj.getZPos(); local pAni = obj.sq_getCurrentAni(); local frmIndex = obj.sq_ani_GetCurrentFrameIndex(pAni); local currentT = sq_GetCurrentTime(pAni); local sq_var = obj.getVar(); } // loop 睡碟殓栖棻 ismycontrol ?蝶?陛 狱樯桧 object陛 桧够击 菟横骨栖棻. setstate 撮?桧釭 ?卫粽螃粽薛? 当撩 , 蛔蛔 籀葬?栖棻. function onProcCon_AwakenningTurnOff(obj) { if(!obj) return; local substate = obj.getSkillSubState(); local pAni = obj.sq_getCurrentAni(); local bEnd = obj.sq_ani_IsEnd(pAni); local frmIndex = obj.sq_ani_GetCurrentFrameIndex(pAni); local substate = obj.getSkillSubState(); if(bEnd) { if(substate == 0) { obj.sq_IntVectClear(); obj.sq_IntVectPush(1); obj.sq_addSetStatePacket(STATE_AWAKENING_TURN_OFF, STATE_PRIORITY_USER, true); } else if(substate == 1) { obj.setObjectHeight(-1); obj.sq_addSetStatePacket(STATE_STAND, STATE_PRIORITY_USER, false); } } } // irdcharacter缣怃 setstate() -> IRDActiveObject::setState -> aftersetstate() 桧楛牖怃缣怃 葆虽虞 setstate殓栖棻. skill?撩缣 评塭怃 ?轿? ?蹂陛 // 毡棻贼 桧 ?热蒂 桧辨?栖棻. function onAfterSetState_AwakenningTurnOff(obj, state, datas, isResetTimer) { if(!obj) return; } // onbeforeattack 属寥?热 殓栖棻 function onBeforeAttack_AwakenningTurnOff(obj, damager, boundingBox) { } // onAttack 属寥?热 殓栖棻 function onAttack_AwakenningTurnOff(obj, damager, boundingBox) { } // onAfterAttack 属寥?热 殓栖棻 function onAfterAttack_AwakenningTurnOff(obj, damager, boundingBox) { } // onBeforeDamage 属寥?热 殓栖棻 function onBeforeDamage_AwakenningTurnOff(obj, attacker, boundingBox) { } // onDamage 属寥?热 殓栖棻 function onDamage_AwakenningTurnOff(obj, attacker, boundingBox) { } // onAfterDamage 属寥?热 殓栖棻 function onAfterDamage_AwakenningTurnOff(obj, attacker, boundingBox) { }