340 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			340 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT	<- 0;
 | |
| 
 | |
| 
 | |
| function setCustomData_po_ATMagicBallLightJumpMultiShot(obj, receiveData)
 | |
| {
 | |
| 	setCustomData_po_ATMagicBallLightJump(obj, receiveData);
 | |
| }
 | |
| 
 | |
| function setCustomData_po_ATMagicBallDarkJumpMultiShot(obj, receiveData)
 | |
| {
 | |
| 	setCustomData_po_ATMagicBallDarkJump(obj, receiveData);
 | |
| }
 | |
| 
 | |
| function setCustomData_po_ATMagicBallWaterJumpMultiShot(obj, receiveData)
 | |
| {
 | |
| 	setCustomData_po_ATMagicBallWaterJump(obj, receiveData);
 | |
| }
 | |
| 
 | |
| function setCustomData_po_ATMagicBallFireJumpMultiShot(obj, receiveData)
 | |
| {
 | |
| 	setCustomData_po_ATMagicBallFireJump(obj, receiveData);
 | |
| }
 | |
| 
 | |
| function setCustomData_po_ATMagicBallNoneJumpMultiShot(obj, receiveData)
 | |
| {
 | |
| 	setCustomData_po_ATMagicBallNoneJump(obj, receiveData);
 | |
| }
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| // 葆彻掘羹 - 赀楼撩
 | |
| function setCustomData_po_ATMagicBallLightJump(obj, receiveData)
 | |
| {
 | |
| 	if(!obj)
 | |
| 		return;
 | |
| 		
 | |
| 	local horizonAngle = receiveData.readFloat();
 | |
| 	local verticalAngle = receiveData.readFloat();
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 县溯诠骁 溯樯 桧塭贼, 奢问溘击 荡潍?堡棻陛 ?嫦?阳 饵辨?紫烟 ?棻.
 | |
| 		
 | |
| 		// 奢问溘 掸?
 | |
| 		local attackBonusRate = receiveData.readDword();
 | |
| 		local attackInfo = sq_GetCurrentAttackInfo(obj);
 | |
| 		sq_SetCurrentAttackBonusRate(attackInfo, attackBonusRate);
 | |
| 		sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| 	}
 | |
| 	
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 县溯诠骁 溯樯缣怃 当撩胀 螃粽薛?
 | |
| 		local flag = receiveData.readDword();
 | |
| 		local var = obj.getVar();
 | |
| 		
 | |
| 		var.setInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT, flag);
 | |
| 	}
 | |
| 	
 | |
| 	// 觼煎栖赝 嬴桧蛊缣 暧?怃 嫦饵陕紫陛 渗唳脾
 | |
| 	local mage = obj.getTopCharacter();
 | |
| 	local angle = sq_GetIntData(mage, SKILL_ELEMENTAL_RAIN, 5);
 | |
| 	verticalAngle = verticalAngle - angle;
 | |
| 	
 | |
| 	
 | |
| 	// ??赝暧 桧翕 陕紫蒂 亵瞰?
 | |
| 	obj.sq_SetMoveParticle("Particle/ATMagicBallLightMoveJump.ptl", horizonAngle, verticalAngle);
 | |
| 	local particleCreater = obj.sq_var.GetparticleCreaterMap("ATMagicBallLight", "PassiveObject/Character/Mage/Particle/ATMagicBallLightTail1.ptl", obj);
 | |
| 	particleCreater.Restart(0);
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallLightTailJump1.ptl");
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallLightTailJump2.ptl");
 | |
| }
 | |
| 
 | |
| function procAppend_po_ATMagicBallLightJump(obj)
 | |
| {
 | |
| 	// 葆彻掘羹 - 赀楼撩 (县溯诠骁 溯樯)
 | |
| 	local var = obj.getVar();
 | |
| 	if (var.getInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT) > 0)
 | |
| 	{
 | |
| 		if (obj.isMyControlObject() && obj.getZPos() <= 16)
 | |
| 		{
 | |
| 			createLightExplosion(obj, null, null, false, 24283);
 | |
| 			sq_SendDestroyPacketPassiveObject(obj);
 | |
| 		}
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| 
 | |
| // 葆彻掘羹 - 檩楼撩
 | |
| function setCustomData_po_ATMagicBallDarkJump(obj, receiveData)
 | |
| {
 | |
| 	if(!obj)
 | |
| 		return 0;
 | |
| 		
 | |
| 	local horizonAngle = receiveData.readFloat();
 | |
| 	local verticalAngle = receiveData.readFloat();
 | |
| 	local attackBonusRate = 0;
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 奢问溘 掸?
 | |
| 		attackBonusRate = receiveData.readDword();
 | |
| 		local attackInfo = sq_GetCurrentAttackInfo(obj);
 | |
| 		sq_SetCurrentAttackBonusRate(attackInfo, attackBonusRate);
 | |
| 		sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| 	}
 | |
| 
 | |
| 	local mage = obj.getTopCharacter();
 | |
| 	if (!mage)
 | |
| 		return 0;
 | |
| 		
 | |
| 	// 觼煎栖赝 嬴桧蛊缣 暧?怃 嫦饵陕紫陛 渗唳脾
 | |
| 	local angle = sq_GetIntData(mage, SKILL_ELEMENTAL_RAIN, 5);
 | |
| 	verticalAngle = verticalAngle - angle;
 | |
| 
 | |
| 	local skill = sq_GetSkill(mage, SKILL_ELEMENTAL_CHANGE);
 | |
| 	local skillLevel = sq_GetSkillLevel(mage, SKILL_ELEMENTAL_CHANGE);
 | |
| 	attackBonusRate = sq_GetAttackBonusRate(skill, 6, 1.0) + attackBonusRate;
 | |
| 
 | |
| 	sq_SetCurrentAttackBonusRate(sq_GetCurrentAttackInfo(obj), attackBonusRate);
 | |
| 	
 | |
| 	// ??赝暧 桧翕 陕紫蒂 亵瞰?
 | |
| 	obj.sq_SetMoveParticle("Particle/ATMagicBallDarkMoveJump.ptl", horizonAngle, verticalAngle);
 | |
| 	local particleCreater = obj.sq_var.GetparticleCreaterMap("ATMagicBallDark", "PassiveObject/Character/Mage/Particle/ATMagicBallDarkTail1.ptl", obj);
 | |
| 	particleCreater.Restart(0);
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallDarkTailJump1.ptl");
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallDarkTailJump2.ptl");
 | |
| 	//obj.sq_AddObjectParticleCreater("Particle/ATMagicBallDarkTailJump3.ptl");
 | |
| }
 | |
| 
 | |
| 
 | |
| // 葆彻掘羹 - 热楼撩
 | |
| function setCustomData_po_ATMagicBallWaterJump(obj, receiveData)
 | |
| {
 | |
| 	if(!obj)
 | |
| 		return;
 | |
| 		
 | |
| 	local horizonAngle = receiveData.readFloat();
 | |
| 	local verticalAngle = receiveData.readFloat();
 | |
| 	
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 奢问溘 掸?
 | |
| 		local attackBonusRate = receiveData.readDword();
 | |
| 		local attackInfo = sq_GetCurrentAttackInfo(obj);
 | |
| 		sq_SetCurrentAttackBonusRate(attackInfo, attackBonusRate);
 | |
| 		sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| 	}
 | |
| 	
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 县溯诠骁 溯樯缣怃 当撩胀 螃粽薛?
 | |
| 		local flag = receiveData.readDword();
 | |
| 		local var = obj.getVar();
 | |
| 		
 | |
| 		var.setInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT, flag);
 | |
| 	}
 | |
| 	
 | |
| 	// 觼煎栖赝 嬴桧蛊缣 暧?怃 嫦饵陕紫陛 渗唳脾
 | |
| 	local mage = obj.getTopCharacter();
 | |
| 	local angle = sq_GetIntData(mage, SKILL_ELEMENTAL_RAIN, 5);
 | |
| 	verticalAngle = verticalAngle - angle;
 | |
| 	
 | |
| 
 | |
| 	// ??赝暧 桧翕 陕紫蒂 亵瞰?
 | |
| 	obj.sq_SetMoveParticle("Particle/ATMagicBallWaterMoveJump.ptl", horizonAngle, verticalAngle);
 | |
| 	local particleCreater = obj.sq_var.GetparticleCreaterMap("ATMagicBallWaterTailJump", "PassiveObject/Character/Mage/Particle/ATMagicBallWaterTail1.ptl", obj);
 | |
| 	particleCreater.Restart(0);
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallWaterTailJump1.ptl");
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallWaterTailJump2.ptl");
 | |
| }
 | |
| 
 | |
| 
 | |
| function procAppend_po_ATMagicBallWaterJump(obj)
 | |
| {
 | |
| 	// 葆彻掘羹 - 热楼撩 (县溯诠骁 溯樯)
 | |
| 	local var = obj.getVar();
 | |
| 	if (var.getInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT) > 0)
 | |
| 	{
 | |
| 		if (obj.isMyControlObject() && obj.getZPos() <= 16)
 | |
| 		{
 | |
| 			createWaterExplosion(obj, null, null, false, 24282);
 | |
| 			sq_SendDestroyPacketPassiveObject(obj);
 | |
| 		}
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| // 葆彻掘羹 - ?楼撩
 | |
| function setCustomData_po_ATMagicBallFireJump(obj, receiveData)
 | |
| {
 | |
| 	if(!obj)
 | |
| 		return;
 | |
| 
 | |
| 	local horizonAngle = receiveData.readFloat();
 | |
| 	local verticalAngle = receiveData.readFloat();
 | |
| 
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 奢问溘 掸?
 | |
| 		local attackBonusRate = receiveData.readDword();
 | |
| 		local attackInfo = sq_GetCurrentAttackInfo(obj);
 | |
| 		sq_SetCurrentAttackBonusRate(attackInfo, attackBonusRate);
 | |
| 		sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| 	}
 | |
| 	
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 县溯诠骁 溯樯缣怃 当撩胀 螃粽薛?
 | |
| 		local flag = receiveData.readDword();
 | |
| 		local var = obj.getVar();
 | |
| 		
 | |
| 		var.setInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT, flag);
 | |
| 	}
 | |
| 	
 | |
| 	// 觼煎栖赝 嬴桧蛊缣 暧?怃 嫦饵陕紫陛 渗唳脾
 | |
| 	local mage = obj.getTopCharacter();
 | |
| 	local angle = sq_GetIntData(mage, SKILL_ELEMENTAL_RAIN, 5);
 | |
| 	verticalAngle = verticalAngle - angle;
 | |
| 	
 | |
| 	// ??赝暧 桧翕 陕紫蒂 亵瞰?
 | |
| 	obj.sq_SetMoveParticle("Particle/ATMagicBallFireMoveJump.ptl", horizonAngle, verticalAngle);
 | |
| 	local particleCreater = obj.sq_var.GetparticleCreaterMap("ATMagicBallNoneTail", "PassiveObject/Character/Mage/Particle/ATMagicBallFireTail1.ptl", obj);
 | |
| 	particleCreater.Restart(0);
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallFireTailJump1.ptl");
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallFireTailJump2.ptl");
 | |
| }
 | |
| 
 | |
| 
 | |
| function procAppend_po_ATMagicBallFireJump(obj)
 | |
| {
 | |
| 	// 葆彻掘羹 - ?楼撩 (县溯诠骁 溯樯)
 | |
| 	local var = obj.getVar();
 | |
| 	if (var.getInt(VAR_IS_ELEMENTAL_RAIN_PASSIVE_OBJECT) > 0)
 | |
| 	{
 | |
| 		if (obj.isMyControlObject() && obj.getZPos() <= 16)
 | |
| 		{
 | |
| 			createFireExplosion(obj, null, null, false, 24281);
 | |
| 			sq_SendDestroyPacketPassiveObject(obj);
 | |
| 		}
 | |
| 	}
 | |
| }
 | |
| 
 | |
| 
 | |
| // 葆彻掘羹 - 鼠楼撩
 | |
| function setCustomData_po_ATMagicBallNoneJump(obj, receiveData)
 | |
| {
 | |
| 	if(!obj)
 | |
| 		return;
 | |
| 		
 | |
| 	local horizonAngle = receiveData.readFloat();
 | |
| 	local verticalAngle = receiveData.readFloat();
 | |
| 
 | |
| 	if (sq_BinaryGetReadSize() < receiveData.getSize())
 | |
| 	{
 | |
| 		// 奢问溘 掸?
 | |
| 		local attackBonusRate = receiveData.readDword();
 | |
| 		local attackInfo = sq_GetCurrentAttackInfo(obj);
 | |
| 		sq_SetCurrentAttackBonusRate(attackInfo, attackBonusRate);
 | |
| 		sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| 	}
 | |
| 	
 | |
| 	// 觼煎栖赝 嬴桧蛊缣 暧?怃 嫦饵陕紫陛 渗唳脾
 | |
| 	local mage = obj.getTopCharacter();
 | |
| 	if (!mage) return;
 | |
| 	
 | |
| 	local angle = sq_GetIntData(mage, SKILL_ELEMENTAL_RAIN, 5);
 | |
| 	verticalAngle = verticalAngle - angle;
 | |
| 	
 | |
| 	// ??赝暧 桧翕 陕紫蒂 亵瞰?
 | |
| 	obj.sq_SetMoveParticle("Particle/ATMagicBallNoneMoveJump.ptl", horizonAngle, verticalAngle);
 | |
| 	local particleCreater = obj.sq_var.GetparticleCreaterMap("ATMagicBallNoneTail", "PassiveObject/Character/Mage/Particle/ATMagicBallNoneTail.ptl", obj);
 | |
| 	particleCreater.Restart(0);
 | |
| 	obj.sq_AddObjectParticleCreater("Particle/ATMagicBallNoneTailJump.ptl");
 | |
| 		
 | |
| 	// 晦狱晦 熨湿 瞳辨
 | |
| 	mage.applyBasicAttackUp(sq_GetCurrentAttackInfo(obj),mage.getState());	
 | |
| 	sq_SetCurrentAttackInfo(obj,sq_GetCurrentAttackInfo(obj));
 | |
| }
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| // 瞳桧 翱楼 葆彻掘(?楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallFireJumpMultiShot(obj, damager, boundingBox, isStuck)
 | |
| {	// 翱楼 葆彻掘 ?楼撩
 | |
| 	createFireExplosion(obj, damager, boundingBox, isStuck, 24281);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| 
 | |
| // 瞳桧 ?颤 葆彻掘(?楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallFireJump(obj, damager, boundingBox, isStuck)
 | |
| {
 | |
| 	// ?颤 ?楼撩
 | |
| 	createFireExplosion(obj, damager, boundingBox, isStuck, 24214);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| 
 | |
| // 瞳桧 翱楼 葆彻掘(热楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallWaterJumpMultiShot(obj, damager, boundingBox, isStuck)
 | |
| {
 | |
| 	createWaterExplosion(obj, damager, boundingBox, isStuck, 24282);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| 
 | |
| // 瞳桧 ?颤 葆彻掘(热楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallWaterJump(obj, damager, boundingBox, isStuck)
 | |
| {
 | |
| 	createWaterExplosion(obj, damager, boundingBox, isStuck, 24215);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| // 瞳桧 翱楼 葆彻掘(赀楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallLightJumpMultiShot(obj, damager, boundingBox, isStuck)
 | |
| {	// ?颤 赀楼撩
 | |
| 	createLightExplosion(obj, damager, boundingBox, isStuck, 24283);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| 
 | |
| // 瞳桧 ?颤 葆彻掘(赀楼撩)缣 蜃挤.
 | |
| // ?嫦 当撩
 | |
| function onAttack_po_ATMagicBallLightJump(obj, damager, boundingBox, isStuck)
 | |
| {	// ?颤 赀楼撩
 | |
| 	createLightExplosion(obj, damager, boundingBox, isStuck, 24216);
 | |
| 	return 0;
 | |
| }
 | |
| 
 | |
| 
 |