Sqr/character/atmage/windstrike/wind_strike.nut

187 lines
5.3 KiB
Plaintext
Raw Normal View History

2024-03-18 21:37:40 +08:00
function checkExecutableSkill_WindStrike(obj) {
if (!obj) return false;
local isUse = obj.sq_IsUseSkill(SKILL_WIND_STRIKE);
if (isUse) {
obj.sq_AddSetStatePacket(STATE_WIND_STRIKE, STATE_PRIORITY_USER, false);
return true;
}
return false;
}
// function onSetState_upperslash(obj)
// {
// print(123123);
// return false;
// }
// 蝶鉴嬴桧夔 ?撩? 亵勒击 评虽朝 ?热殓栖棻. true蒂 葬欐?贼 蝶鉴 嬴桧夔桧 ?撩?陛 腌栖棻. (嫦翕亵勒 state朝 模蝶缣怃 籀葬腌栖棻.)
function checkCommandEnable_WindStrike(obj) {
if (!obj) return false;
local state = obj.sq_GetState();
if (state == STATE_STAND)
return true;
if (state == STATE_ATTACK) {
// 念瘫潍缣怃朝 ?姜蝶鉴虏 警蜗桧 陛栋?栖棻. 蒙机濠:姜霞热 [2012.04.20]
return obj.sq_IsCommandEnable(SKILL_WIND_STRIKE); // 念瘫潍缣怃朝 ?姜蝶鉴虏 警蜗桧 陛栋?栖棻. 蒙机濠:姜霞热 [2012.04.20] obj.sq_IsCommandEnable(SKILL_WIND_STRIKE);
}
return true;
}
// state蒂 撮??坚 籀挤戏煎 菟横螃啪 腌栖棻. 陕谦 葬模蝶蒂 撮??栖棻.
function onSetState_WindStrike(obj, state, datas, isResetTimer) {
if (!obj) return;
obj.sq_StopMove();
obj.sq_SetCurrentAnimation(CUSTOM_ANI_WIND_STRIKE);
obj.sq_SetStaticSpeedInfo(SPEED_TYPE_ATTACK_SPEED, SPEED_TYPE_ATTACK_SPEED,
SPEED_VALUE_DEFAULT, SPEED_VALUE_DEFAULT, 1.0, 1.0);
}
function onEndCurrentAni_WindStrike(obj) {
obj.sq_AddSetStatePacket(STATE_STAND, STATE_PRIORITY_USER, false);
}
function onKeyFrameFlag_WindStrike(obj, flagIndex) {
if (!obj)
return false;
local isMyControlObject = obj.sq_IsMyControlObject();
// ?螃葬 螃粽薛? 当撩
if (isMyControlObject && flagIndex == 1) {
local xPosMin = obj.sq_GetIntData(SKILL_WIND_STRIKE, 0);
local xPosMax = obj.sq_GetIntData(SKILL_WIND_STRIKE, 1);
local attackBonusRate = obj.sq_GetBonusRateWithPassive(SKILL_WIND_STRIKE, STATE_WIND_STRIKE, SKL_LVL_COLUMN_IDX_0, 1.0); // 奢问溘1(%)
local power = obj.sq_GetPowerWithPassive(SKILL_WIND_STRIKE, STATE_WIND_STRIKE, SKL_LVL_COLUMN_IDX_1, SKL_LVL_COLUMN_IDX_0, 1.0);
//local power = obj.sq_GetSkillPowerWithAttackBonusRate(SKILL_WIND_STRIKE, 1, attackBonusRate);
local upForce = obj.sq_GetLevelData(2);
obj.sq_StartWrite();
//obj.sq_WriteWord(EARTHQUAKE_ROCK_MAX);
obj.sq_WriteDword(attackBonusRate); // attackBonusRate
obj.sq_WriteDword(power); // power
obj.sq_WriteWord(upForce); // upForce
obj.sq_SendCreatePassiveObjectPacket(24201, 0, 120, 1, 0);
}
return true;
}
IRDSQRCharacter.pushState(ENUM_CHARACTERJOB_AT_MAGE, "character/atmage/windstrike/wind_strike1.nut", "windstrike1", 1, 1);
IRDSQRCharacter.pushPassiveObj("Character/ATMage/WindStrike/po_wind_strike1.nut", 24357);
function checkExecutableSkill_windstrike1(obj) {
print(123123);
if (!obj) return false;
local isUse = obj.sq_IsUseSkill(243);
if (isUse) {
obj.sq_AddSetStatePacket(243, STATE_PRIORITY_USER, false);
return true;
}
return false;
}
// function onSetState_upperslash(obj)
// {
// print(123123);
// return false;
// }
// 蝶???夔 ??? ?勒? ??朝 ???栖?. true? 葬??? 蝶? ??夔? ???陛 ?栖?. (嫦翕?勒 state朝 模蝶?? ?葬?栖?.)
function checkCommandEnable_windstrike1(obj) {
print(2222);
if (!obj) return false;
local state = obj.sq_GetState();
if (state == STATE_STAND)
return true;
if (state == STATE_ATTACK) {
// 念????朝 ?姜蝶?? 警?? 陛??栖?. 蒙机濠:姜霞? [2012.04.20]
return obj.sq_IsCommandEnable(243); // 念????朝 ?姜蝶?? 警?? 陛??栖?. 蒙机濠:姜霞? [2012.04.20] obj.sq_IsCommandEnable(SKILL_WIND_STRIKE);
}
return true;
}
// state? 撮??? ???煎 ???? ?栖?. ?? 葬模蝶? 撮??栖?.
function onSetState_windstrike1(obj, state, datas, isResetTimer) {
if (!obj) return;
obj.sq_StopMove();
obj.sq_SetCurrentAnimation(CUSTOM_ANI_WIND_STRIKE);
obj.sq_SetStaticSpeedInfo(SPEED_TYPE_ATTACK_SPEED, SPEED_TYPE_ATTACK_SPEED,
SPEED_VALUE_DEFAULT, SPEED_VALUE_DEFAULT, 1.0, 1.0);
}
function onEndCurrentAni_windstrike1(obj) {
obj.sq_AddSetStatePacket(STATE_STAND, STATE_PRIORITY_USER, false);
}
function onKeyFrameFlag_windstrike1(obj, flagIndex) {
if (!obj)
return false;
local isMyControlObject = obj.sq_IsMyControlObject();
// ??葬 ??薛? ??
if (isMyControlObject && flagIndex == 1) {
local xPosMin = obj.sq_GetIntData(SKILL_WIND_STRIKE, 0);
local xPosMax = obj.sq_GetIntData(SKILL_WIND_STRIKE, 1);
local attackBonusRate = obj.sq_GetBonusRateWithPassive(243, 243, SKL_LVL_COLUMN_IDX_0, 1.0); // 奢??1(%)
local power = obj.sq_GetPowerWithPassive(243, 243, SKL_LVL_COLUMN_IDX_1, SKL_LVL_COLUMN_IDX_0, 1.0);
//local power = obj.sq_GetSkillPowerWithAttackBonusRate(SKILL_WIND_STRIKE, 1, attackBonusRate);
local upForce = obj.sq_GetLevelData(2);
obj.sq_StartWrite();
//obj.sq_WriteWord(EARTHQUAKE_ROCK_MAX);
obj.sq_WriteDword(attackBonusRate); // attackBonusRate
obj.sq_WriteDword(power); // power
obj.sq_WriteWord(upForce); // upForce
obj.sq_SendCreatePassiveObjectPacket(24201, 0, 120, 1, 0);
}
return true;
}