port: roll back to old variant of #76

This commit is contained in:
fgsfds committed 2023-09-08 22:28:19 +02:00
1 parent 52854b6502
commit f8ef6939b0
3 files changed
+29 -24

No files matched your search

+7
View File
@@ -1034,6 +1034,13 @@ void preprocessMpConfigs(u8 *data, u32 size)
// TODO: are these required or are they always 0?
PD_SWAP_VAL(cfg->setup.fileguid.deviceserial);
PD_SWAP_VAL(cfg->setup.fileguid.fileid);
// convert MPWEAPON_ to take classic weapons into account
for (s32 j = 0; j < ARRAYCOUNT(cfg->setup.weapons); ++j) {
// old MPWEAPON_SHIELD (0x24/0x25) and above are affected
if (cfg->setup.weapons[j] >= MPWEAPON_PP9I) {
cfg->setup.weapons[j] += (MPWEAPON_SHIELD - MPWEAPON_PP9I);
}
}
}
}
+11 -15
View File
@@ -95,18 +95,18 @@ struct mpweapon g_MpWeapons[NUM_MPWEAPONS] = {
/*0x22*/ { WEAPON_XRAYSCANNER, 0, 0, 0, 0, 1, MPFEATURE_WEAPON_XRAYSCANNER, MODEL_CHRNIGHTSIGHT, 256 },
/*0x23*/ { WEAPON_CLOAKINGDEVICE, 0, 0, 0, 0, 1, MPFEATURE_WEAPON_CLOAKINGDEVICE, MODEL_CHRCLOAKER, 256 },
/*0x24*/ { WEAPON_COMBATBOOST, 0, 0, 0, 0, 1, MPFEATURE_WEAPON_COMBATBOOST, MODEL_CHRSPEEDPILL, 256 },
/*0x25*/ { WEAPON_MPSHIELD, 0, 0, 0, 0, 1, MPFEATURE_WEAPON_SHIELD, MODEL_CHRSHIELD, 256 },
/*0x26*/ { WEAPON_DISABLED },
#ifndef PLATFORM_N64 // add all classic weapons to multiplayer
/*0x27*/ { WEAPON_PP9I, AMMOTYPE_PISTOL, 80, 0, 0, 1, 0, MODEL_CHRWPPK, 256 },
/*0x28*/ { WEAPON_CC13, AMMOTYPE_PISTOL, 80, 0, 0, 1, 0, MODEL_CHRTT33, 256 },
/*0x29*/ { WEAPON_KL01313, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRSKORPION, 256 },
/*0x2a*/ { WEAPON_KF7SPECIAL, AMMOTYPE_RIFLE, 100, 0, 0, 1, 0, MODEL_CHRKALASH, 256 },
/*0x2b*/ { WEAPON_ZZT, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRUZI, 256 },
/*0x2c*/ { WEAPON_DMC, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRMP5K, 256 },
/*0x2d*/ { WEAPON_AR53, AMMOTYPE_RIFLE, 100, 0, 0, 1, 0, MODEL_CHRM16, 256 },
/*0x2e*/ { WEAPON_RCP45, AMMOTYPE_SMG, 150, 0, 0, 1, 0, MODEL_CHRFNP90, 256 },
#ifndef PLATFORM_N64
/*0x25*/ { WEAPON_PP9I, AMMOTYPE_PISTOL, 80, 0, 0, 1, 0, MODEL_CHRWPPK, 256 },
/*0x26*/ { WEAPON_CC13, AMMOTYPE_PISTOL, 80, 0, 0, 1, 0, MODEL_CHRTT33, 256 },
/*0x27*/ { WEAPON_KL01313, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRSKORPION, 256 },
/*0x28*/ { WEAPON_KF7SPECIAL, AMMOTYPE_RIFLE, 100, 0, 0, 1, 0, MODEL_CHRKALASH, 256 },
/*0x29*/ { WEAPON_ZZT, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRUZI, 256 },
/*0x2a*/ { WEAPON_DMC, AMMOTYPE_SMG, 100, 0, 0, 1, 0, MODEL_CHRMP5K, 256 },
/*0x2b*/ { WEAPON_AR53, AMMOTYPE_RIFLE, 150, 0, 0, 1, 0, MODEL_CHRM16, 256 },
/*0x2c*/ { WEAPON_RCP45, AMMOTYPE_SMG, 150, 0, 0, 1, 0, MODEL_CHRFNP90, 256 },
#endif
/*0x2d*/ { WEAPON_MPSHIELD, 0, 0, 0, 0, 1, MPFEATURE_WEAPON_SHIELD, MODEL_CHRSHIELD, 256 },
/*0x2e*/ { WEAPON_DISABLED }, // 0x25 on N64
};
/**
@@ -1154,11 +1154,7 @@ void mpApplyWeaponSet(void)
mpSetWeaponSlot(i, random() % numoptions + 1);
}
#ifndef PLATFORM_N64 // take into account the new classic weapons slots
mpSetWeaponSlot(i, MPWEAPON_DISABLED - 1);
#else
mpSetWeaponSlot(i, mpGetNumWeaponOptions() - 1);
#endif
}
}
+11 -9
View File
@@ -2970,19 +2970,21 @@
#define MPWEAPON_XRAYSCANNER (VERSION == VERSION_JPN_FINAL ? 0x21 : 0x22)
#define MPWEAPON_CLOAKINGDEVICE (VERSION == VERSION_JPN_FINAL ? 0x22 : 0x23)
#define MPWEAPON_COMBATBOOST (VERSION == VERSION_JPN_FINAL ? 0x23 : 0x24)
#ifdef PLATFORM_N64
#define MPWEAPON_SHIELD (VERSION == VERSION_JPN_FINAL ? 0x24 : 0x25)
#define MPWEAPON_DISABLED (VERSION == VERSION_JPN_FINAL ? 0x25 : 0x26)
#ifdef PLATFORM_N64
#define NUM_MPWEAPONS (VERSION == VERSION_JPN_FINAL ? 0x26 : 0x27)
#else // add all classic weapons to multiplayer
#define MPWEAPON_PP9I (VERSION == VERSION_JPN_FINAL ? 0x26 : 0x27)
#define MPWEAPON_CC13 (VERSION == VERSION_JPN_FINAL ? 0x27 : 0x28)
#define MPWEAPON_KL01313 (VERSION == VERSION_JPN_FINAL ? 0x28 : 0x29)
#define MPWEAPON_KF7SPECIAL (VERSION == VERSION_JPN_FINAL ? 0x29 : 0x2a)
#define MPWEAPON_ZZT (VERSION == VERSION_JPN_FINAL ? 0x2a : 0x2b)
#define MPWEAPON_DMC (VERSION == VERSION_JPN_FINAL ? 0x2b : 0x2c)
#define MPWEAPON_AR53 (VERSION == VERSION_JPN_FINAL ? 0x2c : 0x2d)
#define MPWEAPON_RCP45 (VERSION == VERSION_JPN_FINAL ? 0x2d : 0x2e)
#define MPWEAPON_PP9I (VERSION == VERSION_JPN_FINAL ? 0x24 : 0x25)
#define MPWEAPON_CC13 (VERSION == VERSION_JPN_FINAL ? 0x25 : 0x26)
#define MPWEAPON_KL01313 (VERSION == VERSION_JPN_FINAL ? 0x26 : 0x27)
#define MPWEAPON_KF7SPECIAL (VERSION == VERSION_JPN_FINAL ? 0x27 : 0x28)
#define MPWEAPON_ZZT (VERSION == VERSION_JPN_FINAL ? 0x28 : 0x29)
#define MPWEAPON_DMC (VERSION == VERSION_JPN_FINAL ? 0x29 : 0x2a)
#define MPWEAPON_AR53 (VERSION == VERSION_JPN_FINAL ? 0x2a : 0x2b)
#define MPWEAPON_RCP45 (VERSION == VERSION_JPN_FINAL ? 0x2b : 0x2c)
#define MPWEAPON_SHIELD (VERSION == VERSION_JPN_FINAL ? 0x2c : 0x2d)
#define MPWEAPON_DISABLED (VERSION == VERSION_JPN_FINAL ? 0x2d : 0x2e)
#define NUM_MPWEAPONS (VERSION == VERSION_JPN_FINAL ? 0x2e : 0x2f)
#endif