165 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			165 lines
		
	
	
		
			4.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | 
 | |||
|  | // 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) | |||
|  | { | |||
|  | 	 | |||
|  | } | |||
|  | 
 | |||
|  | 
 | |||
|  |  |