With this command you can add texture replacements similar to how a content pack replaces textures.
This is especially useful when, for example, you have multiple supported languages and want to replace certain textures with localized versions.
The file that is required is in the same format as the exceptions.dat file in content packs, but only supports texture replacement entries.
The replaced texture list is cleared when quitting the current save game.
Content Packs should still work, even with the replaced textures.
Also made each Script Delay be defined with an identifier so you can have multiple delays running at the same time!
* arg0 = Identifier
* arg1 = Script Path
* arg2 = Delay Type (Steps, ItemCount)
// Steps
* arg3 = Amount of steps
* arg4 = Whether to display the remaining steps in the start menu
//ItemCount
* arg3 = Item ID
* arg4 = Compare Type (Equal, Below, EqualOrBelow, Above, EqualOrAbove)
* arg5 = Item Amount
With the ItemCount type you can run a script when you do or do not have a certain amount of items
@Player.RemoveItemData(LevelPath,ItemIndex)
Makes the specified item index of the specified map spawn again after it has been found.
LevelPath (str) - Path to the map file (including .dat) relative to "Content\Maps\"
ItemIndex (int) - Index of the ItemObject on the map (first argument in the object's AdditionalValue)
@pokemon.select has an extra argument. If it is set to an attack ID, it will be visible which Pokémon can learn that move while selecting.
Added @Pokemon.CanLearnAttack(PartyIndex,AttackID)
Returns if the Pokémon can learn the specified move.
@Pokemon.NewRoaming(RoamerID,PokémonID,Level,regionID,startLevelFile,MusicLoop,[Shiny],[ScriptPath])
RoamerID & ScriptPath are new.
* RoamerID (int) = A required identifier for the roaming Pokémon, can be used in scripts.
* ScriptPath (str) = Path to a script file to execute after every encounter with any roaming Pokémon
Sets the Ride Type of the current map.
Possible values for "int": 0 = Depends on CanDig and CanFly tags, 1 = Can ride, 2 = Can not ride, 3 = Can't stop riding once started
@Pokemon.Ride([pokeIndex])
Makes a Pokémon in the player's party use the field move Ride. If the argument is left empty, the first Pokémon who knows Ride gets selected.
pokeIndex (int) [optional, defaults to -1] = the party index of a Pokémon
@Pokemon.SetStatus(index,status)
index = Index of the Pokémon in the player's party
status = the desired status to give the Pokémon (possible values: "brn", "frz", "prz", "psn", "bpsn", "slp", "fnt")
@Script.Delay(ScriptPath,DelayType,DelayValue)
Executes a script file after something happened (like having moved a certain amount of steps)
@Script.ClearDelay(ScriptPath,DelayType,DelayValue)
Clears the register created with @script.delay, preventing the script from being executed.
<script.delay(ReturnType)>
Returns a different thing depending on what you write for ReturnType:
"type" - returns what kind of trigger the script delay uses (only "steps" atm)
"script" - returns the script that will be executed after the delay ended
"value" - returns when the trigger ends, like how many steps are left for example
@Player.SetScriptSteps(stepAmount,scriptPath)
Executes a script file after having moved the given amount of steps.
@Player.ClearScriptSteps
Clears the register created with @Player.SetScriptSteps, preventing the script from being executed.
<Player.ScriptSteps>
Returns the amount of steps before the script as defined by @Player.SetScriptSteps is executed.