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;
							 | 
						||
| 
								 | 
							
								}
							 |