diff options
-rw-r--r-- | csrc/loadsave.c | 2 | ||||
-rw-r--r-- | csrc/player_info.h | 8 | ||||
-rw-r--r-- | csrc/players.c | 165 |
3 files changed, 161 insertions, 14 deletions
diff --git a/csrc/loadsave.c b/csrc/loadsave.c index 3ce2538..622d44c 100644 --- a/csrc/loadsave.c +++ b/csrc/loadsave.c @@ -303,7 +303,7 @@ int load_checkpoint(int n) for (int i = 0; i < nplayers; i++) { uint8_t j = players[i].character; - players[i].name_ptr = rich4_characters[j].name_ptr; + players[i].name_ptr = rich4_players[j].name_ptr; } fread(0x498e28, 0x10, 5, fp); diff --git a/csrc/player_info.h b/csrc/player_info.h index 887ae65..2094229 100644 --- a/csrc/player_info.h +++ b/csrc/player_info.h @@ -60,13 +60,7 @@ typedef struct } player_info; extern player_info players[]; /* 0x496b68 */ +extern player_info rich4_players[]; /* 0x47e80c */ -typedef struct -{ - const char *name_ptr; - uint32_t unknown[25]; -} character_info; - -extern character_info rich4_characters[]; /* 0x47e80c */ extern int nplayers; /* 0x499114 */ extern int current_player; /* 0x49910c */ diff --git a/csrc/players.c b/csrc/players.c index b22ec30..d9afc7d 100644 --- a/csrc/players.c +++ b/csrc/players.c @@ -1,12 +1,165 @@ #include "player_info.h" player_info players[4]; -character_info rich4_characters[12] = { - { "\xac\xf9 \xbf\xab \xb3\xec" }, /* 约翰乔 */ - { "\xa8\x46\xb6\xa9\xa4\xda\xb4\xb5" }, /* 沙隆巴斯 */ - { "\xa7\xd4 \xa4\xd3 \xad\xa6" }, /* 忍太郎 */ - { "\xbf\xfa \xa4\xd2 \xa4H"}, /* 钱夫人 */ -}; int nplayers; int current_player; + +player_info rich4_players[12] = { + { + .name_ptr = 0x004665c4, + .f4 = 0x00946126, + .traffic_method = 0, + .ndices = 1, + .character = 0, + .f20 = 1, + .f22 = 3, + .f23 = 2, + .f24 = 60, + .f25 = 50, + .f26 = 30, + }, + { + .name_ptr = 0x004665cd, + .f4 = 0x00bdc3c6, + .traffic_method = 0, + .ndices = 1, + .character = 1, + .f20 = 1, + .f22 = 3, + .f23 = 1, + .f24 = 100, + .f25 = 40, + .f26 = 45, + }, + { + .name_ptr = 0x004665d6, + .f4 = 0x0041323b, + .traffic_method = 0, + .ndices = 1, + .character = 2, + .f20 = 1, + .f22 = 3, + .f23 = 2, + .f24 = 0, + .f25 = 70, + .f26 = 0, + }, + { + .name_ptr = 0x004665df, + .f4 = 0x00c626c3, + .traffic_method = 0, + .ndices = 1, + .character = 3, + .f20 = 0, + .f22 = 3, + .f23 = 2, + .f24 = 100, + .f25 = 60, + .f26 = 30, + }, + { + .name_ptr = 0x004665e8, + .f4 = 0x00c5b830, + .traffic_method = 0, + .ndices = 1, + .character = 4, + .f20 = 1, + .f22 = 3, + .f23 = 1, + .f24 = 50, + .f25 = 40, + .f26 = 25, + }, + { + .name_ptr = 0x004665f1, + .f4 = 0x00ed9d9d, + .traffic_method = 0, + .ndices = 1, + .character = 5, + .f20 = 0, + .f22 = 3, + .f23 = 1, + .f24 = 75, + .f25 = 70, + .f26 = 30, + }, + { + .name_ptr = 0x004665fa, + .f4 = 0x0000f038, + .traffic_method = 0, + .ndices = 1, + .character = 6, + .f20 = 1, + .f22 = 3, + .f23 = 1, + .f24 = 100, + .f25 = 50, + .f26 = 20, + }, + { + .name_ptr = 0x00466603, + .f4 = 0x00ffffa0, + .traffic_method = 0, + .ndices = 1, + .character = 7, + .f20 = 0, + .f22 = 3, + .f23 = 0, + .f24 = 0, + .f25 = 40, + .f26 = 35, + }, + { + .name_ptr = 0x0046660a, + .f4 = 0x00e77c08, + .traffic_method = 0, + .ndices = 1, + .character = 8, + .f20 = 0, + .f22 = 3, + .f23 = 0, + .f24 = 0, + .f25 = 60, + .f26 = 20, + }, + { + .name_ptr = 0x00466611, + .f4 = 0x00cc1a20, + .traffic_method = 0, + .ndices = 1, + .character = 9, + .f20 = 0, + .f22 = 3, + .f23 = 0, + .f24 = 50, + .f25 = 50, + .f26 = 0, + }, + { + .name_ptr = 0x0046661a, + .f4 = 0x002017fe, + .traffic_method = 0, + .ndices = 1, + .character = 10, + .f20 = 1, + .f22 = 3, + .f23 = 1, + .f24 = 30, + .f25 = 55, + .f26 = 15, + }, + { + .name_ptr = 0x00466623, + .f4 = 0x000ebdbd, + .traffic_method = 0, + .ndices = 1, + .character = 11, + .f20 = 0, + .f22 = 3, + .f23 = 2, + .f24 = 80, + .f25 = 80, + .f26 = 0, + } +}; |