Updated various functions for Trident

Updated various functions for Trident
Katar is a simple weapon.
This commit is contained in:
Jaysyn904 2025-05-05 19:52:23 -04:00
parent 89c6018463
commit 46c50ae362
5 changed files with 37 additions and 14 deletions

View File

@ -3434,6 +3434,7 @@ int PrimoGetWeaponSize(object oItem)
case BASE_ITEM_KATANA:
case BASE_ITEM_MAGICSTAFF:
case BASE_ITEM_LONGSWORD:
case BASE_ITEM_TRIDENT:
case BASE_ITEM_MORNINGSTAR:
case BASE_ITEM_RAPIER:
case BASE_ITEM_SCIMITAR:

View File

@ -1075,13 +1075,16 @@ int GetIsTwoHandedMeleeWeaponType(int iWeaponType)
{
switch(iWeaponType)
{
case BASE_ITEM_GREATAXE: return TRUE;
case BASE_ITEM_GREATSWORD: return TRUE;
case BASE_ITEM_HALBERD: return TRUE;
case BASE_ITEM_SHORTSPEAR: return TRUE;
case BASE_ITEM_HEAVYFLAIL: return TRUE;
case BASE_ITEM_MAUL: return TRUE;
case BASE_ITEM_FALCHION: return TRUE;
case BASE_ITEM_GREATAXE: return TRUE;
case BASE_ITEM_GREATSWORD: return TRUE;
case BASE_ITEM_HALBERD: return TRUE;
case BASE_ITEM_SHORTSPEAR: return TRUE;
case BASE_ITEM_HEAVYFLAIL: return TRUE;
case BASE_ITEM_SCYTHE: return TRUE;
case BASE_ITEM_QUARTERSTAFF: return TRUE;
case BASE_ITEM_ELVEN_COURTBLADE: return TRUE;
case BASE_ITEM_MAUL: return TRUE;
case BASE_ITEM_FALCHION: return TRUE;
}
return FALSE;
}
@ -9075,4 +9078,6 @@ void PerformAttack(object oDefender, object oAttacker,
AttackLoopMain(oDefender, oAttacker, 0, 0, 1, iAttackBonusMod, sAttackVars, sMainWeaponDamage, sOffHandWeaponDamage, sSpellBonusDamage);
else
AttackLoopMain(oDefender, oAttacker, 0, 1, 0, iAttackBonusMod, sAttackVars, sMainWeaponDamage, sOffHandWeaponDamage, sSpellBonusDamage);
}
}
//:: void main (){}

View File

@ -258,6 +258,7 @@ int GetFocusFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_WEAPON_FOCUS_SICKLE;
case BASE_ITEM_SLING: return FEAT_WEAPON_FOCUS_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_WEAPON_FOCUS_THROWING_AXE;
case BASE_ITEM_TRIDENT: return FEAT_WEAPON_FOCUS_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_WEAPON_FOCUS_TWO_BLADED_SWORD;
case BASE_ITEM_WARHAMMER: return FEAT_WEAPON_FOCUS_WAR_HAMMER;
case BASE_ITEM_WHIP: return FEAT_WEAPON_FOCUS_WHIP;
@ -314,6 +315,7 @@ int GetSpecializationFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_WEAPON_SPECIALIZATION_SICKLE;
case BASE_ITEM_SLING: return FEAT_WEAPON_SPECIALIZATION_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_WEAPON_SPECIALIZATION_THROWING_AXE;
case BASE_ITEM_TRIDENT: return FEAT_WEAPON_SPECIALIZATION_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_WEAPON_SPECIALIZATION_TWO_BLADED_SWORD;
case BASE_ITEM_WARHAMMER: return FEAT_WEAPON_SPECIALIZATION_WAR_HAMMER;
case BASE_ITEM_WHIP: return FEAT_WEAPON_SPECIALIZATION_WHIP;
@ -370,6 +372,7 @@ int GetEpicFocusFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_EPIC_WEAPON_FOCUS_SICKLE;
case BASE_ITEM_SLING: return FEAT_EPIC_WEAPON_FOCUS_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_EPIC_WEAPON_FOCUS_THROWINGAXE;
case BASE_ITEM_TRIDENT: return FEAT_EPIC_WEAPON_FOCUS_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_EPIC_WEAPON_FOCUS_TWOBLADEDSWORD;
case BASE_ITEM_WARHAMMER: return FEAT_EPIC_WEAPON_FOCUS_WARHAMMER;
case BASE_ITEM_WHIP: return FEAT_EPIC_WEAPON_FOCUS_WHIP;
@ -426,6 +429,7 @@ int GetEpicSpecializationFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_EPIC_WEAPON_SPECIALIZATION_SICKLE;
case BASE_ITEM_SLING: return FEAT_EPIC_WEAPON_SPECIALIZATION_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_EPIC_WEAPON_SPECIALIZATION_THROWINGAXE;
case BASE_ITEM_TRIDENT: return FEAT_EPIC_WEAPON_SPECIALIZATION_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_EPIC_WEAPON_SPECIALIZATION_TWOBLADEDSWORD;
case BASE_ITEM_WARHAMMER: return FEAT_EPIC_WEAPON_SPECIALIZATION_WARHAMMER;
case BASE_ITEM_WHIP: return FEAT_EPIC_WEAPON_SPECIALIZATION_WHIP;
@ -482,6 +486,7 @@ int GetImprovedCriticalFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_IMPROVED_CRITICAL_SICKLE;
case BASE_ITEM_SLING: return FEAT_IMPROVED_CRITICAL_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_IMPROVED_CRITICAL_THROWING_AXE;
case BASE_ITEM_TRIDENT: return FEAT_IMPROVED_CRITICAL_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_IMPROVED_CRITICAL_TWO_BLADED_SWORD;
case BASE_ITEM_WARHAMMER: return FEAT_IMPROVED_CRITICAL_WAR_HAMMER;
case BASE_ITEM_WHIP: return FEAT_IMPROVED_CRITICAL_WHIP;
@ -538,6 +543,7 @@ int GetOverwhelmingCriticalFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_EPIC_OVERWHELMING_CRITICAL_SICKLE;
case BASE_ITEM_SLING: return FEAT_EPIC_OVERWHELMING_CRITICAL_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_EPIC_OVERWHELMING_CRITICAL_THROWINGAXE;
case BASE_ITEM_TRIDENT: return FEAT_EPIC_OVERWHELMING_CRITICAL_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_EPIC_OVERWHELMING_CRITICAL_TWOBLADEDSWORD;
case BASE_ITEM_WARHAMMER: return FEAT_EPIC_OVERWHELMING_CRITICAL_WARHAMMER;
case BASE_ITEM_WHIP: return FEAT_EPIC_OVERWHELMING_CRITICAL_WHIP;
@ -589,6 +595,7 @@ int GetDevastatingCriticalFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SICKLE: return FEAT_EPIC_DEVASTATING_CRITICAL_SICKLE;
case BASE_ITEM_SLING: return FEAT_EPIC_DEVASTATING_CRITICAL_SLING;
case BASE_ITEM_THROWINGAXE: return FEAT_EPIC_DEVASTATING_CRITICAL_THROWINGAXE;
case BASE_ITEM_TRIDENT: return FEAT_EPIC_DEVASTATING_CRITICAL_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_EPIC_DEVASTATING_CRITICAL_TWOBLADEDSWORD;
case BASE_ITEM_WARHAMMER: return FEAT_EPIC_DEVASTATING_CRITICAL_WARHAMMER;
case BASE_ITEM_WHIP: return FEAT_EPIC_DEVASTATING_CRITICAL_WHIP;
@ -627,6 +634,7 @@ int GetWeaponOfChoiceFeatOfWeaponType(int iWeaponType)
case BASE_ITEM_SHORTSPEAR: return FEAT_WEAPON_OF_CHOICE_SHORTSPEAR;
case BASE_ITEM_SHORTSWORD: return FEAT_WEAPON_OF_CHOICE_SHORTSWORD;
case BASE_ITEM_SICKLE: return FEAT_WEAPON_OF_CHOICE_SICKLE;
case BASE_ITEM_TRIDENT: return FEAT_WEAPON_OF_CHOICE_TRIDENT;
case BASE_ITEM_TWOBLADEDSWORD: return FEAT_WEAPON_OF_CHOICE_TWOBLADEDSWORD;
case BASE_ITEM_WARHAMMER: return FEAT_WEAPON_OF_CHOICE_WARHAMMER;
case BASE_ITEM_WHIP: return FEAT_WEAPON_OF_CHOICE_WHIP;
@ -662,7 +670,6 @@ int GetWeaponSize(object oWeapon)
case BASE_ITEM_QUARTERSTAFF:
case BASE_ITEM_SCYTHE:
case BASE_ITEM_SHORTSPEAR:
case BASE_ITEM_TRIDENT:
case BASE_ITEM_ELVEN_COURTBLADE:
case BASE_ITEM_MAUL:
case BASE_ITEM_FALCHION:
@ -699,7 +706,6 @@ int PRCLargeWeaponCheck(int iBaseType, int nSize)
case BASE_ITEM_QUARTERSTAFF:
case BASE_ITEM_SCYTHE:
case BASE_ITEM_SHORTSPEAR:
case BASE_ITEM_TRIDENT:
case BASE_ITEM_ELVEN_COURTBLADE:
case BASE_ITEM_MAUL:
case BASE_ITEM_FALCHION:

View File

@ -39,7 +39,17 @@ int IsProficient(object oPC, int nBaseItem)
|| (GetHasFeat(FEAT_WEAPON_PROFICIENCY_SIMPLE, oPC) && GetRacialType(oPC) == RACIAL_TYPE_CHITINE)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_SHORTSWORD, oPC);
case BASE_ITEM_LONGSWORD:
case BASE_ITEM_CLUB:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_SIMPLE, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_DRUID, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_CLUB, oPC);
case BASE_ITEM_DAGGER:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_SIMPLE, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_DRUID, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_DAGGER, oPC);
case BASE_ITEM_LONGSWORD:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_MARTIAL, oPC)
|| GetHasFeat(FEAT_MINDBLADE, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_ELF, oPC)
@ -197,8 +207,7 @@ int IsProficient(object oPC, int nBaseItem)
case BASE_ITEM_TRIDENT:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_TRIDENT, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_SIMPLE, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_DRUID, oPC);
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_MARTIAL, oPC);
case BASE_ITEM_DOUBLE_SCIMITAR:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_DOUBLE_SCIMITAR, oPC)
@ -226,7 +235,7 @@ int IsProficient(object oPC, int nBaseItem)
case BASE_ITEM_KATAR:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_KATAR, oPC)
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_EXOTIC, oPC);
|| GetHasFeat(FEAT_WEAPON_PROFICIENCY_SIMPLE, oPC);
case BASE_ITEM_MAUL:
return GetHasFeat(FEAT_WEAPON_PROFICIENCY_MAUL, oPC)
@ -571,6 +580,7 @@ int IsWeaponMartial(int nBaseItemType, object oPC)
case BASE_ITEM_HANDAXE:
case BASE_ITEM_RAPIER:
case BASE_ITEM_SCIMITAR:
case BASE_ITEM_TRIDENT:
case BASE_ITEM_THROWINGAXE:
case BASE_ITEM_SCYTHE:
case BASE_ITEM_MAUL:

View File

@ -34,6 +34,7 @@ int IsItemMetal(object oItem)
type==BASE_ITEM_SHORTSWORD ||
type==BASE_ITEM_SHURIKEN ||
type==BASE_ITEM_SICKLE ||
type==BASE_ITEM_TRIDENT ||
type==BASE_ITEM_THROWINGAXE ||
type==BASE_ITEM_TWOBLADEDSWORD ||
type==BASE_ITEM_WARHAMMER ||