diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/constants/union_room.h | 2 | ||||
-rw-r--r-- | include/event_object_movement.h | 18 | ||||
-rw-r--r-- | include/fieldmap.h | 2 | ||||
-rw-r--r-- | include/union_room.h | 15 | ||||
-rw-r--r-- | include/union_room_player_avatar.h | 18 |
5 files changed, 29 insertions, 26 deletions
diff --git a/include/constants/union_room.h b/include/constants/union_room.h index 9243ea15d..7b1d1a1be 100644 --- a/include/constants/union_room.h +++ b/include/constants/union_room.h @@ -1,6 +1,8 @@ #ifndef GUARD_CONSTANTS_UNION_ROOM_H #define GUARD_CONSTANTS_UNION_ROOM_H +#define MAX_UNION_ROOM_PLAYERS 8 + #define UNION_ROOM_SPAWN_NONE 0 #define UNION_ROOM_SPAWN_IN 1 #define UNION_ROOM_SPAWN_OUT 2 diff --git a/include/event_object_movement.h b/include/event_object_movement.h index f0caa38aa..6ccd4759e 100644 --- a/include/event_object_movement.h +++ b/include/event_object_movement.h @@ -81,11 +81,11 @@ void sub_808E16C(s16, s16); void OverrideSecretBaseDecorationSpriteScript(u8 localId, u8 mapNum, u8 mapGroup, u8 decorCat); void sub_8092FF0(s16, s16, s16 *, s16 *); u8 GetFaceDirectionAnimNum(u8); -void sub_80930E0(s16 *, s16 *, s16, s16); +void SetSpritePosToOffsetMapCoords(s16 *, s16 *, s16, s16); void ObjectEventClearHeldMovement(struct ObjectEvent *); void ObjectEventClearHeldMovementIfActive(struct ObjectEvent *); void TrySpawnObjectEvents(s16, s16); -u8 sprite_new(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction); +u8 CreateObjectSprite(u8 graphicsId, u8 a1, s16 x, s16 y, u8 z, u8 direction); u8 AddPseudoObjectEvent(u16, void (*)(struct Sprite *), s16 x, s16 y, u8 subpriority); u8 TrySpawnObjectEvent(u8, u8, u8); u8 SpawnSpecialObjectEventParameterized(u8 graphicsId, u8 movementBehavior, u8 localId, s16 x, s16 y, u8 z); @@ -180,7 +180,7 @@ void CreateLevitateMovementTask(struct ObjectEvent *); void DestroyExtraMovementTask(u8); void UnfreezeObjectEvents(void); void FreezeObjectEventsExceptOne(u8 objectEventId); -void sub_8097B78(u8, u8); +void TurnObjectEventSprite(u8, u8); void sub_8098074(u8 var1, u8 var2); void FreezeObjectEvents(void); bool8 FreezeObjectEvent(struct ObjectEvent *objectEvent); @@ -194,7 +194,7 @@ void UpdateObjectEventSpriteVisibility(struct Sprite *sprite, bool8 invisible); s16 sub_809773C(s16 a1); s16 sub_8097728(s16 a1); void CameraObjectReset2(void); -u8 ObjectEventGetBerryTreeId(u8 objectEventId); +u8 GetObjectEventBerryTreeId(u8 objectEventId); void sub_8092EF0(u8 mapId, u8 mapNumber, u8 mapGroup); bool8 IsBerryTreeSparkling(u8, u8, u8); @@ -414,10 +414,10 @@ u8 MovementType_RunInPlace_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementType_Invisible_Step0(struct ObjectEvent *, struct Sprite *); u8 MovementType_Invisible_Step1(struct ObjectEvent *, struct Sprite *); u8 MovementType_Invisible_Step2(struct ObjectEvent *, struct Sprite *); -void sub_8097C44(u8 var, bool32 var2); -bool32 sub_8097C8C(u8 var); -void sub_8097BB4(u8 var1, u8 graphicsId); -void sub_8097CC4(u8 var1, u8 var2); -bool32 sub_8097D9C(u8 var); +void SetObjectEventSpriteInvisibility(u8 var, bool32 var2); +bool32 IsObjectEventSpriteInvisible(u8 var); +void SetObjectEventSpriteGraphics(u8 var1, u8 graphicsId); +void SetObjectEventSpriteAnim(u8 var1, u8 var2); +bool32 IsObjectEventSpriteAnimating(u8 var); #endif //GUARD_EVENT_OBJECT_MOVEMENT_H diff --git a/include/fieldmap.h b/include/fieldmap.h index dc81d1766..aff458eb1 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -43,6 +43,7 @@ void copy_map_tileset1_to_vram(const struct MapLayout *); void copy_map_tileset2_to_vram(const struct MapLayout *); struct MapHeader const *const mapconnection_get_mapheader(struct MapConnection *connection); struct MapConnection *GetConnectionAtCoords(s16 x, s16 y); +void MapGridSetMetatileImpassabilityAt(int x, int y, bool32 impassable); void SpriteCB_PokeballGlow(struct Sprite *); void SpriteCB_PokecenterMonitor(struct Sprite *); @@ -50,6 +51,5 @@ void SpriteCB_HallOfFameMonitor(struct Sprite *); // field_region_map.c void FieldInitRegionMap(MainCallback callback); -void sub_8088B94(int x, int y, int a2); #endif //GUARD_FIELDMAP_H diff --git a/include/union_room.h b/include/union_room.h index 0f0075344..4cdb17662 100644 --- a/include/union_room.h +++ b/include/union_room.h @@ -2,6 +2,7 @@ #define GUARD_UNION_ROOM_H #include "link_rfu.h" +#include "constants/union_room.h" // Exported type declarations @@ -31,7 +32,7 @@ struct UnkStruct_x20 // WirelessLink_Member? struct UnkStruct_Main0 { - struct UnkStruct_x20 arr[8]; + struct UnkStruct_x20 arr[MAX_UNION_ROOM_PLAYERS]; }; struct UnkStruct_Main4 @@ -85,12 +86,12 @@ struct WirelessLink_Group u8 delayBeforePrint; }; -struct UnkStruct_8019BA8 +struct UnionRoomObject { - u8 field_0; - u8 field_1; - s8 field_2; - u8 field_3; + u8 state; + u8 gfxId; + s8 animState; + u8 schedAnim; }; struct WirelessLink_URoom @@ -121,7 +122,7 @@ struct WirelessLink_URoom u8 activityRequestStrbufs[4][16]; u16 partnerYesNoResponse; u16 recvActivityRequest[3]; - struct UnkStruct_8019BA8 field_A0[8]; + struct UnionRoomObject objects[MAX_UNION_ROOM_PLAYERS]; u8 field_C0[12][15]; u8 field_174[48]; u8 field_1A4[200]; diff --git a/include/union_room_player_avatar.h b/include/union_room_player_avatar.h index 698fc1693..072126949 100644 --- a/include/union_room_player_avatar.h +++ b/include/union_room_player_avatar.h @@ -1,14 +1,14 @@ #ifndef GUARD_UNION_ROOM_PLAYER_AVATAR_H #define GUARD_UNION_ROOM_PLAYER_AVATAR_H -u8 sub_8019BA8(struct UnkStruct_8019BA8 * ptr); -void sub_8019E3C(void); -void CreateGroupMemberObjectsInvisible(u8 *arg0, s32 arg1); -void DestroyGroupMemberObjects(u8 *spriteIds); -void sub_8019F2C(void); -void ScheduleUnionRoomPlayerRefresh(struct WirelessLink_URoom *arg0); -void HandleUnionRoomPlayerRefresh(struct WirelessLink_URoom *arg0); -bool32 RfuUnionTool_GetGroupAndMemberInFrontOfPlayer(struct UnkStruct_Main0 *arg0, s16 *arg1, s16 *arg2, u8 *arg3); -void UpdateUnionGroupMemberFacing(u32 arg0, u32 arg1, struct UnkStruct_Main0 *arg2); +u8 InitUnionRoomPlayerObjects(struct UnionRoomObject *players); +void DestroyUnionRoomPlayerObjects(void); +void CreateGroupMemberSpritesInvisible(u8 *spriteIds, s32 playerIdx); +void DestroyGroupMemberSprites(u8 *spriteIds); +void SetTilesAroundUnionRoomPlayersPassable(void); +void ScheduleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); +void HandleUnionRoomPlayerRefresh(struct WirelessLink_URoom *uroom); +bool32 TrySetUnionRoomMemberFacePlayer(struct UnkStruct_Main0 *main0, s16 *directionPtr, s16 *playerIdxPtr, u8 *spriteIds); +void UpdateUnionRoomMemberFacing(u32 currDirection, u32 playerIdx, struct UnkStruct_Main0 *main0); #endif //GUARD_UNION_ROOM_PLAYER_AVATAR_H |