58 Commits

Author SHA1 Message Date
JappaWakka
3bedef29e3 Add the new commands to the script library 2025-10-24 19:29:21 +02:00
JappaWakka
ff1d21f115 Added @System.ReplaceTextures(File) ...
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.
2025-05-29 17:20:52 +02:00
JappaWakka
41c5d35864 Add @Player.SetDifficullty(int) command 2025-04-17 19:30:56 +02:00
JappaWakka
885f7f80d6 Reset textcolor upon game exit, update Scr.Library 2025-02-03 17:38:04 +01:00
JappaWakka
37cc3a7556 Fix some pokédex constructs and add 2 new ones...
Also update the scriptlibrary for dopokedex.
`<Pokedex.PokemonCaught(ID)>` Returns if the specified Pokémon has been caught.
`<Pokedex.PokemonSee(ID)>` Returns if the specified Pokémon has been seen.
2025-01-28 11:17:53 +01:00
JappaWakka
9b942ab977 Expanded @Script.Delay with ItemCount DelayType
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
2024-12-28 19:26:01 +01:00
JappaWakka
c19a7b06cd Scriptlibrary tweaks 2024-11-03 19:36:07 +01:00
JappaWakka
9522656df9 Added <Player.LastRestPlace> construct
Returns the last rest location the player has visited in the following format: "map.dat,x,y,z".
2024-09-28 10:06:55 +02:00
JappaWakka
10cc749328 Add @NPC.SetScale(npcID,X,Y,Z)
Works the same way as @Entity.SetScale()
2024-09-20 10:55:06 +02:00
JappaWakka
e065eb575a Added <Level.LoadOffsetMaps>
(Bool) Returns if OffsetMaps are being loaded (based on the Offset Map Quality option in the Options Menu).
2024-08-14 14:10:18 +02:00
JappaWakka
36ba9c6875 Added some missing commands to the scriptlibrary 2024-07-14 18:37:27 +02:00
JappaWakka
b53ee169e5 Added command @Player.RemoveItemData()
@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)
2024-07-14 17:29:13 +02:00
JappaWakka
6f41946e21 Added @Player.DoWalkAnimation(bool)
Enables or disables the player's walking animation when walking or during a @player.move command.
2024-07-04 19:43:05 +02:00
JappaWakka
f4354a9922 Make it possible to check if pkmn can learn attack
@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.
2024-05-14 11:02:47 +02:00
JappaWakka
d5d291bdda Added @Player.QuitGame(doFade) command
Quits the game and goes back to the Main Menu (with optionally a fade out and in)
2024-04-26 09:51:59 +02:00
JappaWakka
81f05a3bd1 Added <System.FileExists(FilePath)> construct
Returns if the specified file (including extension) exists (relative to the GameMode's ContentPath).
2024-04-22 19:25:07 +02:00
JappaWakka
86428f8055 Add construct <Pokemon.FullyHealed([partyID])>
Checks if a specific Pokémon or all Pokémon in the party are fully healed.
2024-04-21 09:10:23 +02:00
JappaWakka
1bef17409e Add <Pokemon.IsRoaming(RoamerID)>
Checks if the given roaming Pokémon is still active.
2024-04-07 08:56:49 +02:00
JappaWakka
65ec57d27b Change RoamingID from int to str 2024-04-04 17:52:47 +02:00
JappaWakka
f280c5718c Update @Pokemon.NewRoaming(...) command...
@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
2024-04-04 17:49:46 +02:00
JappaWakka
9ffa127999 Correct script library command 2024-04-01 20:08:25 +02:00
JappaWakka
8b0b977665 Made it possible to fade into @music.forceplay 2024-03-29 18:54:53 +01:00
JappaWakka
d5ed9d5cca Fix incorrect info in ScriptLibrary 2024-03-29 18:53:41 +01:00
JappaWakka
85bcb52780 Added @Level.SetRideType(int) command
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
2023-12-27 18:55:48 +01:00
JappaWakka
3f1b7ffc0c Added @Pokemon.Ride([pokeIndex[) command
@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
2023-12-27 17:13:00 +01:00
JappaWakka
845464f03c Added @Item.Use(ItemID) command
@Item.Use(ItemID)
Uses the specified item if the player has it.
2023-12-27 17:10:54 +01:00
JappaWakka
a1c3c6f9da Added <Pokémon.LevelAttacks(id,maxLv)> construct
<Pokémon.LevelAttacks(Index,[MaxLevel])>
Returns a string of every move the Pokémon can learn at or below a certain level
* Index (int) = Index of a Pokémon in the player's party
* MaxLevel (int) [optional] = Every move the Pokémon can learn at or below the level specified by this argument is added to the string. When this argument is left out or set to "-1", it will default to the Pokémon's current level.
2023-12-16 15:59:32 +01:00
JappaWakka
2a869e0b4b Added @Pokemon.SetStatus(index,status) command...
@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")
2023-12-04 19:05:31 +01:00
JappaWakka
864fa7f508 Implement fade into the next song in command 2023-11-28 09:53:20 +01:00
JappaWakka
a7e723f720 Add Selected Player Skin Name & Gender constructs 2023-11-23 15:09:39 +01:00
JappaWakka
c0101a122a Replaced script steps thing with @script.delay
@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
2023-10-30 13:28:30 +01:00
JappaWakka
dae406f887 Added Step Script commands & constructs
@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.
2023-10-29 17:59:39 +01:00
JappaWakka
5747c2f1ce Added pkmn gender constructs + fix hidden grotto 2023-09-03 18:47:15 +02:00
JappaWakka
f92373d447 Add @Entity.SetModel(ID,ModelPath) 2023-08-09 20:22:36 +02:00
JappaWakka
78cd53d745 Added <system.scripttrigger>
Returns what triggered the current script (NPCInSight, NPCInteract, ScriptBlockWalkOn, ScriptBlockInteract, Notification, PhoneReceive, PhoneCall, StartScript, ScriptCommand, StrengthTrigger, MapScript, ChatCommand).
2023-08-06 16:17:05 +02:00
JappaWakka
6fe581dff9 Add @player.removefrontieremblem(str,bool) 2023-07-28 13:06:04 +02:00
JappaWakka
bded481df8 Customizable Frontier Emblems 2023-07-28 12:35:00 +02:00
JappaWakka
af2831673e Mail sender name and ot constructs 2023-07-25 14:11:41 +02:00
JappaWakka
4a7c89cf53 Update ScriptLibrary 2023-06-30 17:56:26 +02:00
JappaWakka
4d65d4bbc8 Fix some commands & script library 2023-06-26 19:23:13 +02:00
JappaWakka
9971ed1d5f Added @Pokemon.AddEV(pokeIndex,evStat,evValue)
Adds the evValue argument to the Effort Value stat of a Pokémon in the player's party and makes sure it's legal.
2023-06-17 11:51:35 +02:00
JappaWakka
0e8170a449 @Music.ForcePlay(song) & @Music.Unforce
@Music.ForcePlay(song)
Changes the currently playing music to a new one and prevents the music from being changed by warps or surfing/riding and such.

@Music.Unforce
Allows warps and surfing/riding etc. to change the music again.
2023-06-17 11:37:08 +02:00
JappaWakka
f627d9dd55 Update ScriptLibrary 2023-06-08 11:02:48 +02:00
JappaWakka
319ad9b231 Added @item.select and <inventory.selected>
@item.select(AllowedPages,AllowedItems)
Opens an item select screen with only the specified item type pages (separated with ";", e.g. "0;1;2" or "standard;medicine;plants") and possible item IDs (single items separated with ";", or with a "-" if you want a range, e.g. "2000-2066"
Both variables are optional. If AllowedPages is empty, all pages are allowed. If AllowItems is empty, all items are allowed.

<inventory.selected>
Returns the ID of the item selected in the screen opened by @item.select(AllowedPages,AllowedItems)
2023-05-31 12:34:11 +02:00
JappaWakka
7dcc423480 Added command to change the EnvironmentType
@Environment.SetEnvironmentType(ID)

This command temporarily sets the "EnvironmentType" parameter of the current map until a map change, which also changes the sky texture and sometimes adds particles. Value can be 0-5.
0 = Outside
1 = Inside
2 = Cave
3 = Dark (also makes all entities darker)
4 = Underwater (adds air bubble particles)
5= Forest
2022-12-06 19:03:23 +01:00
JappaWakka
88ac7fc687 Added some missing commands to the scriptlibrary 2022-07-07 19:03:19 +02:00
JappaWakka
dab417e190 DiamondDive WaterFall fix and other fixes
Added @player.stopmovement before waterfall scripts to make sure the player doesn't move further than they should
Fixed spelling error in code: NotifcationTypes -> NotificationTypes
Added commands to ScriptLibrary that were missing
2022-06-14 18:12:29 +02:00
JappaWakka
7eb7805dcf Added constructs for checking player movement
Also fixed the "<player.velocity>" construct and reset the player's movement speed in the teacher script in violet city
2022-06-11 15:01:16 +02:00
JappaWakka
c2c7033ece Added "@environment.resetregionweather" command
Resets the weather to be based on the current season.
2022-05-31 21:00:56 +02:00
Jasper "JappaWakka" Speelman
7165cd70bc Added player walk speed commands to scriptlibrary 2022-04-04 19:38:19 +02:00