Expands the SC start check (#6690)

This commit is contained in:
Aleos 2022-03-15 17:15:01 -04:00 committed by GitHub
parent 4ef2f33284
commit 6787f68452
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 49 additions and 2 deletions

View File

@ -815,6 +815,8 @@ Body:
Flags: Flags:
NoSave: true NoSave: true
- Status: Spellbreaker - Status: Spellbreaker
Flags:
NoWarning: true
- Status: Autospell - Status: Autospell
Icon: EFST_AUTOSPELL Icon: EFST_AUTOSPELL
DurationLookup: SA_AUTOSPELL DurationLookup: SA_AUTOSPELL
@ -824,6 +826,8 @@ Body:
NoRemoveOnDead: true NoRemoveOnDead: true
NoClearance: true NoClearance: true
- Status: Sighttrasher - Status: Sighttrasher
Flags:
NoWarning: true
- Status: Autoberserk - Status: Autoberserk
Icon: EFST_AUTOBERSERK Icon: EFST_AUTOBERSERK
DurationLookup: SM_AUTOBERSERK DurationLookup: SM_AUTOBERSERK
@ -1074,6 +1078,8 @@ Body:
Saturdaynightfever: true Saturdaynightfever: true
_Bloodylust: true _Bloodylust: true
- Status: Fury - Status: Fury
Flags:
NoWarning: true
- Status: Gospel - Status: Gospel
Icon: EFST_GOSPEL Icon: EFST_GOSPEL
DurationLookup: PA_GOSPEL DurationLookup: PA_GOSPEL
@ -2209,6 +2215,8 @@ Body:
NoSave: true NoSave: true
NoClearance: true NoClearance: true
- Status: Kaensin - Status: Kaensin
Flags:
NoWarning: true
- Status: Suiton - Status: Suiton
Icon: EFST_NJ_SUITON Icon: EFST_NJ_SUITON
DurationLookup: NJ_SUITON DurationLookup: NJ_SUITON
@ -2444,6 +2452,8 @@ Body:
NoBanishingBuster: true NoBanishingBuster: true
NoClearance: true NoClearance: true
- Status: Ksprotected - Status: Ksprotected
Flags:
NoWarning: true
- Status: Armor_Resist - Status: Armor_Resist
CalcFlags: CalcFlags:
All: true All: true
@ -3033,6 +3043,8 @@ Body:
DisplayPc: true DisplayPc: true
NoClearance: true NoClearance: true
- Status: Reading_Sb - Status: Reading_Sb
Flags:
NoWarning: true
- Status: Freeze_Sp - Status: Freeze_Sp
Icon: EFST_FREEZE_SP Icon: EFST_FREEZE_SP
Flags: Flags:
@ -6389,6 +6401,8 @@ Body:
CalcFlags: CalcFlags:
Flee2: true Flee2: true
- Status: Doram_Svsp - Status: Doram_Svsp
Flags:
NoWarning: true
- Status: Fallen_Angel - Status: Fallen_Angel
DurationLookup: RL_FALLEN_ANGEL DurationLookup: RL_FALLEN_ANGEL
- Status: Cheerup - Status: Cheerup
@ -6499,6 +6513,8 @@ Body:
CalcFlags: CalcFlags:
Regen: true Regen: true
- Status: Earthshaker - Status: Earthshaker
Flags:
NoWarning: true
- Status: Weaponblock_On - Status: Weaponblock_On
Icon: EFST_WEAPONBLOCK_ON Icon: EFST_WEAPONBLOCK_ON
Flags: Flags:
@ -6629,7 +6645,11 @@ Body:
Flags: Flags:
NoClearance: true NoClearance: true
- Status: Dimension1 - Status: Dimension1
Flags:
NoWarning: true
- Status: Dimension2 - Status: Dimension2
Flags:
NoWarning: true
- Status: Creatingstar - Status: Creatingstar
Icon: EFST_CREATINGSTAR Icon: EFST_CREATINGSTAR
DurationLookup: SJ_BOOKOFCREATINGSTAR DurationLookup: SJ_BOOKOFCREATINGSTAR

View File

@ -828,6 +828,8 @@ Body:
Flags: Flags:
NoSave: true NoSave: true
- Status: Spellbreaker - Status: Spellbreaker
Flags:
NoWarning: true
- Status: Autospell - Status: Autospell
Icon: EFST_AUTOSPELL Icon: EFST_AUTOSPELL
DurationLookup: SA_AUTOSPELL DurationLookup: SA_AUTOSPELL
@ -837,6 +839,8 @@ Body:
NoRemoveOnDead: true NoRemoveOnDead: true
NoClearance: true NoClearance: true
- Status: Sighttrasher - Status: Sighttrasher
Flags:
NoWarning: true
- Status: Autoberserk - Status: Autoberserk
Icon: EFST_AUTOBERSERK Icon: EFST_AUTOBERSERK
DurationLookup: SM_AUTOBERSERK DurationLookup: SM_AUTOBERSERK
@ -1085,6 +1089,8 @@ Body:
Saturdaynightfever: true Saturdaynightfever: true
_Bloodylust: true _Bloodylust: true
- Status: Fury - Status: Fury
Flags:
NoWarning: true
- Status: Gospel - Status: Gospel
Icon: EFST_GOSPEL Icon: EFST_GOSPEL
DurationLookup: PA_GOSPEL DurationLookup: PA_GOSPEL
@ -2317,6 +2323,8 @@ Body:
NoSave: true NoSave: true
NoClearance: true NoClearance: true
- Status: Kaensin - Status: Kaensin
Flags:
NoWarning: true
- Status: Suiton - Status: Suiton
Icon: EFST_NJ_SUITON Icon: EFST_NJ_SUITON
DurationLookup: NJ_SUITON DurationLookup: NJ_SUITON
@ -2552,6 +2560,8 @@ Body:
NoBanishingBuster: true NoBanishingBuster: true
NoClearance: true NoClearance: true
- Status: Ksprotected - Status: Ksprotected
Flags:
NoWarning: true
- Status: Armor_Resist - Status: Armor_Resist
CalcFlags: CalcFlags:
All: true All: true
@ -3145,6 +3155,8 @@ Body:
NoClearance: true NoClearance: true
SendVal1: true SendVal1: true
- Status: Reading_Sb - Status: Reading_Sb
Flags:
NoWarning: true
- Status: Freeze_Sp - Status: Freeze_Sp
Icon: EFST_FREEZE_SP Icon: EFST_FREEZE_SP
Flags: Flags:
@ -6646,6 +6658,8 @@ Body:
CalcFlags: CalcFlags:
Flee2: true Flee2: true
- Status: Doram_Svsp - Status: Doram_Svsp
Flags:
NoWarning: true
- Status: Fallen_Angel - Status: Fallen_Angel
DurationLookup: RL_FALLEN_ANGEL DurationLookup: RL_FALLEN_ANGEL
- Status: Cheerup - Status: Cheerup
@ -6761,6 +6775,8 @@ Body:
CalcFlags: CalcFlags:
Regen: true Regen: true
- Status: Earthshaker - Status: Earthshaker
Flags:
NoWarning: true
- Status: Weaponblock_On - Status: Weaponblock_On
Icon: EFST_WEAPONBLOCK_ON Icon: EFST_WEAPONBLOCK_ON
DurationLookup: SHC_IMPACT_CRATER DurationLookup: SHC_IMPACT_CRATER
@ -6897,7 +6913,11 @@ Body:
Flags: Flags:
NoClearance: true NoClearance: true
- Status: Dimension1 - Status: Dimension1
Flags:
NoWarning: true
- Status: Dimension2 - Status: Dimension2
Flags:
NoWarning: true
- Status: Creatingstar - Status: Creatingstar
Icon: EFST_CREATINGSTAR Icon: EFST_CREATINGSTAR
DurationLookup: SJ_BOOKOFCREATINGSTAR DurationLookup: SJ_BOOKOFCREATINGSTAR
@ -7084,6 +7104,7 @@ Body:
NoClearance: true NoClearance: true
NoClearbuff: true NoClearbuff: true
- Status: Reuse_Limit_Luxanima - Status: Reuse_Limit_Luxanima
Icon: EFST_REUSE_LIMIT_LUXANIMA
Flags: Flags:
NoBanishingBuster: true NoBanishingBuster: true
NoDispell: true NoDispell: true
@ -7357,6 +7378,7 @@ Body:
DisplayPc: true DisplayPc: true
RemoveOnDamaged: true RemoveOnDamaged: true
- Status: Handicapstate_Swooning - Status: Handicapstate_Swooning
Icon: EFST_HANDICAPSTATE_SWOONING
States: States:
#NoMove: true #NoMove: true
#NoCast: true #NoCast: true
@ -7414,9 +7436,11 @@ Body:
BlEffect: true BlEffect: true
DisplayPc: true DisplayPc: true
- Status: Handicapstate_Depression - Status: Handicapstate_Depression
Icon: EFST_HANDICAPSTATE_DEPRESSION
Flags: Flags:
DisplayPc: true DisplayPc: true
- Status: Handicapstate_Holyflame - Status: Handicapstate_Holyflame
Icon: EFST_HANDICAPSTATE_HOLYFLAME
Flags: Flags:
DisplayPc: true DisplayPc: true
- Status: Servantweapon - Status: Servantweapon

View File

@ -220,6 +220,7 @@ Flags: Various status flags for specific status change events.
NoBanishingBuster - Cannot be removed by RL_BANISHING_BUSTER. NoBanishingBuster - Cannot be removed by RL_BANISHING_BUSTER.
NoSave - Won't be saved when player logs out. NoSave - Won't be saved when player logs out.
NoSaveInfinite - Infinite duration status won't be saved when player logs out. NoSaveInfinite - Infinite duration status won't be saved when player logs out.
NoWarning - Ignores the status_change_start check for statuses that have no defining features associated to them in the status database.
RemoveOnDamaged - Removed when receiving damage. RemoveOnDamaged - Removed when receiving damage.
RemoveOnRefresh - Removed by RK_REFRESH. RemoveOnRefresh - Removed by RK_REFRESH.

View File

@ -8902,6 +8902,7 @@
export_constant(SCF_SENDVAL2); export_constant(SCF_SENDVAL2);
export_constant(SCF_SENDVAL3); export_constant(SCF_SENDVAL3);
export_constant(SCF_NOFORCEDEND); export_constant(SCF_NOFORCEDEND);
export_constant(SCF_NOWARNING);
#undef export_constant #undef export_constant
#undef export_constant2 #undef export_constant2

View File

@ -11739,9 +11739,9 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
break; break;
default: default:
if (calc_flag == SCB_NONE && scdb->skill_id == 0 && scdb->icon == EFST_BLANK) { if (calc_flag == SCB_NONE && scdb->skill_id == 0 && scdb->icon == EFST_BLANK && scdb->opt1 == OPT1_NONE && scdb->opt2 == OPT2_NONE && scdb->state.none() && scdb->flag.none() && scdb->end.empty() && scdb->fail.empty()) {
// Status change with no calc, no icon, and no skill associated...? // Status change with no calc, no icon, and no skill associated...?
ShowError("status_change_start: Unknown SC %d\n", type); ShowWarning("status_change_start: Status %s (%d) is bare. Add the NoWarning flag to suppress this message.\n", script_get_constant_str("SC_", type), type);
return 0; return 0;
} }
} else // Special considerations when loading SC data. } else // Special considerations when loading SC data.

View File

@ -2853,6 +2853,7 @@ enum e_status_change_flag : uint16 {
SCF_SENDVAL2, SCF_SENDVAL2,
SCF_SENDVAL3, SCF_SENDVAL3,
SCF_NOFORCEDEND, SCF_NOFORCEDEND,
SCF_NOWARNING,
SCF_MAX SCF_MAX
}; };