Replace all raw string comparisons with StringKey, source generator that creates cache keys for all names for Gen7 plugin
All checks were successful
Build / Build (push) Successful in 2m21s
All checks were successful
Build / Build (push) Successful in 2m21s
This commit is contained in:
@@ -30,16 +30,19 @@ public class HarshSunlight : Script, ILimitedTurnsScript, IScriptChangeBasePower
|
||||
}
|
||||
}
|
||||
|
||||
// Hydro Steam is not part of the gen 7 data files, so no generated constant exists for it.
|
||||
private static readonly StringKey HydroSteamName = "hydro_steam";
|
||||
|
||||
/// <inheritdoc />
|
||||
public void ChangeBasePower(IExecutingMove move, IPokemon target, byte hit, ref ushort basePower)
|
||||
{
|
||||
var hitType = move.GetHitData(target, hit).Type;
|
||||
if (hitType?.Name == "fire" || move.UseMove.Name == "hydro_steam")
|
||||
if (hitType?.Name == TypeNames.Fire || move.UseMove.Name == HydroSteamName)
|
||||
{
|
||||
// Increase Fire-type move power by 50% in harsh sunlight
|
||||
basePower = (ushort)(basePower * 1.5);
|
||||
}
|
||||
else if (hitType?.Name == "water")
|
||||
else if (hitType?.Name == TypeNames.Water)
|
||||
{
|
||||
basePower = (ushort)(basePower * 0.5);
|
||||
}
|
||||
@@ -52,7 +55,7 @@ public class HarshSunlight : Script, ILimitedTurnsScript, IScriptChangeBasePower
|
||||
return;
|
||||
if (args is not CustomTriggers.BypassChargeMoveArgs bypassArgs)
|
||||
return;
|
||||
if (bypassArgs.Move.UseMove.Name == "solar_beam" || bypassArgs.Move.UseMove.Name == "solar_blade")
|
||||
if (bypassArgs.Move.UseMove.Name == MoveNames.SolarBeam || bypassArgs.Move.UseMove.Name == MoveNames.SolarBlade)
|
||||
{
|
||||
bypassArgs.Bypass = true;
|
||||
}
|
||||
@@ -70,7 +73,7 @@ public class HarshSunlight : Script, ILimitedTurnsScript, IScriptChangeBasePower
|
||||
/// <inheritdoc />
|
||||
public void ChangeAccuracy(IExecutingMove executingMove, IPokemon target, byte hitIndex, ref int modifiedAccuracy)
|
||||
{
|
||||
if (executingMove.UseMove.Name == "thunder" || executingMove.UseMove.Name == "hurricane")
|
||||
if (executingMove.UseMove.Name == MoveNames.Thunder || executingMove.UseMove.Name == MoveNames.Hurricane)
|
||||
{
|
||||
modifiedAccuracy = (int)(modifiedAccuracy * 0.5);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user