Bivurnum
47723c34e5
Follower NPCs (follow-me) ( #6500 )
...
Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com>
2025-04-27 14:56:18 +02:00
Bassoonian
708bb4a831
Merge branch 'master' of https://github.com/pret/pokeemerald into pretmerge10apr
2025-04-10 23:57:57 +02:00
cawtds
1672d99060
make linkDirection more robust to member reordering
2025-04-09 13:40:39 +02:00
Salem
01e8d8233e
Trainer Battle Parameter Consolidation ( #5982 )
2025-01-25 22:02:39 +01:00
Martin Griffin
bb781f21a1
Arbitrary trainer scripts + map script/trigger softlock prevention ( #5033 )
...
Script_RunImmediatelyUntilEffect runs a script until either a specified
effect may occur or it reaches an end.
All existing script commands and natives, and some specials, call
Script_RequestEffects which allows us to analyze them.
Any downstream script commands/natives/specials will be statically known
not to call Script_RequestEffects and treated as if they have all
effects. Manually tagging them with requests_effects=1 and calling
Script_RequestEffects will make them analyzable.
Using these, we're able to execute scripts until they either exit with
no effect, or would possibly have an effect. This allows us to:
1. Not run on frame map scripts or triggers if they would have no
effect.
2. Immediately run triggers if they only affect flags/vars. This removes
the lag frames when biking into the Cycling Road, for example.
3. Migrate on load/on transition/on resume/on return to field/on dive
warp scripts onto the global script context if they would block
(approximated via SCREFF_HARDWARE).
4. Support arbitrary control flow in trainer scripts. The trainer does
not see the player if the script has no effect, and the trainer will
use whichever trainerbattle command is branched to.
5. Support arbitrary scripts in trainer scripts. cant_see and
cant_see_if_* commands have been introduced so that scripts are able
to do something when the player interacts with the trainer even if
that trainer wouldn't see them.
2025-01-08 10:27:00 +00:00
Eduardo Quezada
80447bee8e
Merge branch '_pret/master' into _RHH/pr/master/pretSync20241015
2024-10-15 20:56:56 -03:00
luckytyphlosion
a55c75d350
Get rid of common syms ( #2040 )
2024-10-14 23:52:11 -04:00
Eduardo Quezada
6d5cd7cbd7
Removed duplicate tags
2024-05-28 14:58:26 -04:00
Eduardo Quezada
8854eaa880
Removed duplicated object event tags
2024-05-28 14:16:34 -04:00
Eduardo Quezada
9fc7e37c73
Comment updates
2024-05-21 19:38:42 -04:00
Eduardo Quezada
3d9c7732f6
Merge branch '_RHH/upcoming' into _RHH/pr/upcoming/merrpFollowers
...
# Conflicts:
# include/event_object_movement.h
# src/data.c
# src/data/graphics/pokemon.h
# src/data/pokemon/species_info/gen_4_families.h
2024-04-20 13:23:14 -04:00
Bassoonian
8329d8368d
Merge branch 'master' of https://github.com/pret/pokeemerald into pretmergemidapril
2024-04-12 12:16:28 +02:00
pkmnsnfrn
71b8d20397
Replaced magic numbers regarding triggerGroundEffectsOnMove to TRUE / FALSE
2024-04-04 16:21:34 -04:00
Eduardo Quezada
124c17d315
Merge remote-tracking branch 'merrp_origin/followers-expanded-id' into _RHH/pr/upcoming/merrpFollowers
...
# Conflicts:
# README.md
# data/field_effect_scripts.s
# data/maps/AncientTomb/scripts.inc
# data/maps/DesertRuins/scripts.inc
# data/maps/IslandCave/scripts.inc
# data/scripts/follower.inc
# graphics/object_events/pics/pokemon/wailord.png
# graphics/object_events/pics/pokemon_old/substitute.png
# include/constants/event_objects.h
# include/global.h
# remote_build.sh
# spritesheet_rules.mk
# src/bike.c
# src/data/object_events/object_event_anims.h
# src/data/object_events/object_event_graphics.h
# src/data/object_events/object_event_graphics_info_followers.h
# src/data/object_events/object_event_pic_tables.h
# src/event_object_movement.c
# src/field_effect_helpers.c
# src/field_screen_effect.c
# src/overworld.c
# src/palette.c
# src/pokemon_summary_screen.c
# src/scrcmd.c
# src/trainer_see.c
2024-02-17 23:40:08 -03:00
Ariel A
725252905b
Merge branch 'merrp/pr/style' into followers
2024-02-15 22:49:36 -05:00
Ariel A
afbb88d77a
Undo (most) indentation changes.
2024-02-15 22:24:20 -05:00
Ariel A
a407c72235
Cleaned up follower code.
...
Added support for asymmetrical follower pokemon.
Fixed bug with changing GraphicsInfo size.
Added follower Substitute gfx. Credit: shikashipx
2024-02-12 20:37:01 -05:00
Eduardo Quezada
ebbcb7d025
Whitespace, documentation and style
2024-01-22 19:12:52 -03:00
Eduardo Quezada
ddc752eb14
Merge branch '_RHH/upcoming' into _RHH/pr/upcoming/merrpFollowers
...
# Conflicts:
# asm/macros/event.inc
# data/field_effect_scripts.s
# data/maps/BattleFrontier_BattleTowerLobby/scripts.inc
# data/script_cmd_table.inc
# graphics/pokemon/castform/sunny/anim_front.png
# graphics/pokemon/castform/sunny/normal.pal
# include/battle_util.h
# include/constants/event_object_movement.h
# include/constants/field_effects.h
# src/battle_controller_player.c
# src/battle_util.c
# src/data/object_events/movement_action_func_tables.h
# src/data/object_events/object_event_pic_tables.h
# src/data/trainer_graphics/back_pic_anims.h
# src/daycare.c
# src/event_object_movement.c
# src/field_effect_helpers.c
# src/load_save.c
# src/scrcmd.c
# src/trainer_see.c
2024-01-17 18:11:35 -03:00
Ariel A
7d7531f2fa
Merge branch 'master' into followers
2023-12-31 01:28:27 -05:00
psf
fe16a2cdee
Port pokefirered's Vs. Seeker to pokeemerald ( #3256 )
...
* First version of Vs. Seeker
* Update movement.inc
98f7e9978d (r1306721924)
* Update field_effect_scripts.s
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722004
* Update field_effect_scripts.s
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722024
* Update item_use.h
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722401
* Update movement_action_func_tables.h
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722828
* Update event_object_movement.c
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306722887
* Update overworld.c
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306723396
* Update vs_seeker.h
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256/files#r1306724158
* Update vs_seeker.c
Addressed some cleanup comments from SBird
* Update UpdateRandomTrainerRematches
Fixed typo in ClearAllTrainerRematchStates
Fixed types in GetRematchableTrainerLocalId
* Updated UseVsSeekerEffect_2
* Updated UseVsSeekerEffect_3
* Updated UseVsSeekerEffect_4
* Fixed bug that allowed Vs Seeker to be used indoors in correct places
Moved VsSeeker function declarations into header
* Refactored FieldUseFunc_VsSeeker
* Added curly braces to else case in FieldUseFunc_VsSeeker
* renamed data[x] in Task_ResetObjectsRematchWantedState
* Refactored Task_ResetObjectsRematchWantedState
* Refactored VsSeekerResetObjectMovementAfterChargeComplete
* Refactored ResetMovementOfRematchableTrainers
* Refactored GatherNearbyTrainerInfo
* Refactored Task_VsSeeker_3
* CanUseVsSeeker
* Refactored GetVsSeekerResponseInArea
* GetCurVsSeekerResponse refactored
* Cleaned up GetTrainerFlagFromScript
* Gave sensible names to Task_VsSeeker
* Fixed two bugs where player would not have the right gfx state after using VsSeeker on a Bike or Underwater
* Renamed UseVsSeeker Functions
* Added I_VS_SEEKER_CHARGING to make Vs. Seeker broken until flag is assigned
Removed extra VsSeeker animation code
* Addressed PR feedback
* Fixed issue with building non-modern
* Refactored GetRunningBehaviorFromGraphicsId and renamed to GetResponseMovementTypeFromTrainerGraphicsId
* Addresses Lunos's PR feedback: https://github.com/rh-hideout/pokeemerald-expansion/pull/3256\#pullrequestreview-1623547850
Removed the check to see if a map was not indoors to improve readability
Made IsValidLocationForVsSeeker into a static function
* Added changes in response to Jasper's feedback
https://github.com/rh-hideout/pokeemerald-expansion/pull/3256\#pullrequestreview-1725276522
* Updated with Edu's discord feedback https://discord.com/channels/419213663107416084/1135040810082123907/1176872015085453392
* Removed ifdef tags around the repo unless needed
b5dc744ced
2023-11-26 18:58:43 +01:00
Eduardo Quezada
a6940c9e03
Merge branch 'pret_master' into RHH/pr/upcoming/pret_Merge20231002
...
# Conflicts:
# src/battle_ai_script_commands.c
# src/battle_controller_player.c
# src/battle_controller_recorded_opponent.c
# src/battle_controller_safari.c
# src/battle_controller_wally.c
# src/battle_controllers.c
# src/battle_gfx_sfx_util.c
# src/battle_interface.c
# src/battle_main.c
# src/battle_script_commands.c
# src/battle_util.c
# src/mystery_gift_menu.c
# src/pokemon.c
2023-10-02 17:17:41 -03:00
Eduardo Quezada
af210da972
Solved a bunch of -Wall errors on modern
2023-09-20 19:01:08 -03:00
Ariel A
8df538479a
Merge branch 'master' into followers
2023-09-03 17:39:35 -04:00
Eduardo Quezada
0d5b00aaf2
Merge remote-tracking branch 'pret/master' into RHH/pr/upcoming/pret_20230829
...
# Conflicts:
# README.md
# data/battle_ai_scripts.s
# data/battle_scripts_1.s
# data/maps/BattleFrontier_Lounge7/scripts.inc
# include/battle_anim.h
# include/battle_message.h
# include/constants/items.h
# src/battle_ai_script_commands.c
# src/battle_ai_switch_items.c
# src/battle_anim_throw.c
# src/battle_anim_utility_funcs.c
# src/battle_controller_link_opponent.c
# src/battle_controller_link_partner.c
# src/battle_controller_opponent.c
# src/battle_controller_player.c
# src/battle_controller_player_partner.c
# src/battle_controller_recorded_opponent.c
# src/battle_controller_recorded_player.c
# src/battle_controller_wally.c
# src/battle_gfx_sfx_util.c
# src/battle_message.c
# src/battle_script_commands.c
# src/battle_util.c
# src/data/party_menu.h
# src/data/pokemon/tmhm_learnsets.h
# src/daycare.c
# src/field_specials.c
# src/hall_of_fame.c
# src/party_menu.c
# src/pokemon.c
# src/tv.c
2023-08-31 14:28:01 -04:00
GriffinR
e70577d59b
Add missing sizeof in trainer_see
2023-08-20 17:22:29 -04:00
Eduardo Quezada
c391c66249
Cleanup pt4
...
- Removed TIME_OF_DAY_FADE and UpdateTimeOfDayPaletteFade
- Renamed FieldCallback_Fly back to FieldCallback_UseFly
2023-06-18 01:45:04 -04:00
Eduardo Quezada
bf814e11cd
Cleanup
...
- Proper whitespace
- Bracket pret style
- Simplified RemoveObjectEventInternal
- SImplified GetMonInfo
- Made IsFollowerVisible easier to read
2023-06-18 01:19:46 -04:00
Eduardo Quezada
341ce6fd95
Merge remote-tracking branch 'merrp_origin/followers-expanded-id' into merrp/followers_RHH_merge3
...
# Conflicts:
# .github/workflows/build.yml
# README.md
# gflib/sprite.c
# graphics/pokemon/banette/anim_front.png
# graphics/pokemon/banette/normal.pal
# graphics/pokemon/sentret/normal.pal
# graphics/pokemon/togetic/anim_front.png
# graphics/pokemon/togetic/normal.pal
# include/battle_script_commands.h
# include/data.h
# ld_script.txt
# src/battle_controller_player.c
# src/bike.c
# src/event_object_movement.c
2023-06-16 21:25:16 -04:00
Ariel A
d12efe8cd7
Merge branch 'master' into followers
2023-05-15 18:37:38 -04:00
Eduardo Quezada
b62e5aa72e
Merge remote-tracking branch 'pret/master' into RHH/sync/pret_20230214
...
# Conflicts:
# src/battle_main.c
# src/field_specials.c
# src/trade.c
2023-02-15 14:11:03 -03:00
Ariel A
66c57e3442
Merge branch 'master' into followers
2023-01-29 18:44:06 -05:00
GriffinR
7681340966
Merge branch 'master' of https://github.com/pret/pokeemerald into sync-trade
2023-01-23 14:45:51 -05:00
Eduardo Quezada
749225ace1
Matching merge from upstream pret
...
# Conflicts:
# graphics/interface/menu_info.png
# include/pokemon.h
# src/battle_ai_switch_items.c
# src/battle_anim_mons.c
# src/battle_anim_water.c
# src/battle_controller_opponent.c
# src/battle_gfx_sfx_util.c
# src/battle_main.c
# src/battle_pike.c
# src/battle_script_commands.c
# src/data/pokemon/species_info.h
# src/pokemon.c
# src/pokemon_summary_screen.c
2023-01-20 12:31:54 -03:00
Jaizu
a3ae182fc2
Add constants when using GetMonsStateToDoubles_2
2023-01-15 09:50:31 +01:00
GriffinR
347a02ace1
Sync trade
2022-12-15 15:40:59 -05:00
Ariel A
1c011a9c1c
Merge branch 'master' into followers
2022-10-07 20:52:15 -04:00
TheXaman
7696a78760
Update src/trainer_see.c
...
Co-authored-by: Eduardo Quezada D'Ottone <eduardo602002@gmail.com>
2022-09-05 11:04:21 +02:00
Eduardo Quezada D'Ottone
4017fc3e20
Apply style suggestions from code review
2022-09-03 21:22:15 -04:00
TheXaman
367b12801e
changed debug_config.h to overworld_config.h,
...
changed no bag use and no catching flags to battle_config.h,
removed TX reference (big sad)
2022-09-02 12:33:42 +02:00
TheXaman
ad57551db1
removed unnecessary script, cheat start now with national dex, reverted accidental type hin removal, changed indentation
2022-09-02 12:10:11 +02:00
TheXaman
04c40677bd
Changed the way debug flags are handled, now in constants/battle_config.h
2022-08-30 17:41:35 +02:00
TheXaman
bed5639074
Changed preproc defines to TRUE/FALSE, small cleanup
2022-08-29 19:36:44 +02:00
TheXaman
8c9a59ec1c
Merge branch 'tx_debug_system' of https://github.com/TheXaman/pokeemerald into tx_debug_system_rhh
2022-08-29 19:13:11 +02:00
tustin2121
1cb659df8c
Renaming Script Contexts
...
- Determined how the various script contexts were used and renamed accordingly.
- ScriptContext2_Enable/Disable => Lock/UnlockPlayerFieldControls - The sole purpose of the flag is to make sure the player can't move around in the overworld. It has nothing to do with script contexts.
- ScriptContext1 => ScriptContext - It is the global script context used to set up scripts which run over many frames.
- ScriptContext2_RunNewScript => RunScriptImmediately - ScriptContext2's sole purpose was to run scripts immediately and in a separate context, usually while the global context is waiting for things like map loads or screen changes.
2022-08-15 15:18:12 -04:00
Eduardo Quezada
2e1bf0d965
OamData mosaic FALSE
2022-07-29 21:27:39 -04:00
Ariel A
9beee311c4
Merge branch 'master' into romhack
2022-07-17 15:13:15 -04:00
Ariel A
28ec60a776
Fixed some field effect palettes. Removed leftover CacheLightMetatiles.
2022-05-10 23:21:54 -04:00
TheXaman
c54bf21b01
Merge branch 'master' of https://github.com/pret/pokeemerald into tx_debug_system
2022-04-16 23:18:35 +02:00
GriffinR
1ff0b0efa9
Add missing collision constant usage
2022-01-29 21:13:46 -05:00