266 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			266 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
 | 
						|
////////////////////////////////////////////////////////////////////
 | 
						|
 | 
						|
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;
 | 
						|
} |