zEntPickup.cpp progress

This commit is contained in:
Seil Weiss
2021-04-11 01:21:52 -05:00
parent 2d2c0ea1d7
commit 28cf283d70
16 changed files with 1740 additions and 65 deletions
+1
View File
@@ -6,6 +6,7 @@ extern "C" {
#endif
int sprintf(char* s, const char* format, ...);
void printf(const char* format, ...);
#ifdef __cplusplus
}
+1
View File
@@ -6,6 +6,7 @@
extern uint8* giAnimScratch;
void iAnimInit();
uint32 iAnimBoneCount(void* RawData);
void iAnimBlend(float32 BlendFactor, float32 BlendRecip, uint16* BlendTimeOffset,
float32* BoneTable, uint32 BoneCount, xVec3* Tran1, xQuat* Quat1, xVec3* Tran2,
xQuat* Quat2, xVec3* TranDest, xQuat* QuatDest);
+1
View File
@@ -7,6 +7,7 @@
#include <rwcore.h>
#include <rpworld.h>
uint32 iModelNumBones(RpAtomic* model);
int32 iModelCull(RpAtomic* model, RwMatrixTag* mat);
int32 iModelSphereCull(xSphere* sphere);
RpAtomic* iModelFile_RWMultiAtomic(RpAtomic* model);
+4
View File
@@ -35,4 +35,8 @@ struct xEntDrive
ASSIGNMENT_OPERATOR(xEntDrive)
};
void xEntDriveInit(xEntDrive* drv, xEnt* driven);
void xEntDriveMount(xEntDrive* drv, xEnt* driver, float32 mt, const xCollis* coll);
void xEntDriveDismount(xEntDrive* drv, float32 dmt);
#endif
+2
View File
@@ -102,6 +102,7 @@ uint32 xFXanimUVCreate();
void xFXFireworksInit(const char* fireworksTrailEmitter, const char* fireworksEmitter1,
const char* fireworksEmitter2, const char* fireworksSound,
const char* fireworksLaunchSound);
void xFXFireworksLaunch(float32 countdownTime, const xVec3* pos, float32 fuelTime);
void xFXFireworksUpdate(float32 dt);
void xFXStreakInit();
void xFXStreakUpdate(float32 dt);
@@ -109,6 +110,7 @@ void xFXStreakRender();
void xFXShineInit();
void xFXShineUpdate(float32 dt);
void xFXShineRender();
RpAtomic* xFXAtomicEnvMapSetup(RpAtomic* atomic, uint32 envmapID, float32 shininess);
void xFXRibbonSceneEnter();
void xFXRibbonUpdate(float32 dt);
void xFXRibbonRender();
+4
View File
@@ -6,6 +6,7 @@
#include "xMath3.h"
struct xEnt;
struct xQCData;
struct xGridBound
{
@@ -56,6 +57,8 @@ struct xGridIterator
uint32 delfound;
};
typedef int32 (*GridEntCallback)(xEnt*, void*);
extern volatile int32 gGridIterActive;
void xGridBoundInit(xGridBound* gridb, void* data);
@@ -69,5 +72,6 @@ xGridBound* xGridIterFirstCell(xGrid* grid, float32 posx, float32, float32 posz,
xGridBound* xGridIterFirstCell(xGridBound** head, xGridIterator& it);
xGridBound* xGridIterNextCell(xGridIterator& it);
void xGridIterClose(xGridIterator& it);
void xGridCheckPosition(xGrid* grid, xVec3* pos, xQCData* qcd, GridEntCallback hitCB, void* cbdata);
#endif
+1
View File
@@ -127,6 +127,7 @@ float32 xMat3x3LookVec(xMat3x3* m, const xVec3* at);
void xBoxInitBoundOBB(xBox* o, const xBox* b, const xMat4x3* m);
void xMat3x3Scale(xMat3x3* m, const xVec3* s);
void xMat3x3ScaleC(xMat3x3* m, float32 x, float32 y, float32 z);
void xMat3x3RMulRotY(xMat3x3* o, const xMat3x3* m, float32 t);
void xMat3x3Mul(xMat3x3* o, const xMat3x3* a, const xMat3x3* b);
void xBoxFromLine(xBox& box, const xLine3& line);
void xBoxFromRay(xBox& box, const xRay3& ray);
+1
View File
@@ -22,6 +22,7 @@ void xModelBucket_Init();
void xModelBucket_Deinit();
xModelBucket** xModelBucket_GetBuckets(RpAtomic* data);
void xModelBucket_Begin();
void xModelBucket_Add(xModelInstance* minst);
void xModelBucket_RenderOpaque();
void xModelBucket_RenderAlphaBegin();
void xModelBucket_RenderAlphaLayer(int32 maxLayer);
+2
View File
@@ -28,12 +28,14 @@ struct xSerial
void setClient(uint32 idtag);
int32 Write_b1(int32 bits);
int32 Write_b7(uint32 bits);
int32 Write(uint8 data);
int32 Write(int16 data);
int32 Write(int32 data);
int32 Write(uint32 data);
int32 Write(float32 data);
int32 Read_b1(int32* bits);
int32 Read_b7(uint32* bits);
int32 Read(uint8* buf);
int32 Read(int16* buf);
int32 Read(int32* buf);
+1668 -64
View File
File diff suppressed because it is too large Load Diff
+33
View File
@@ -8,6 +8,7 @@
#include "../Core/x/xEntDrive.h"
#include "../Core/x/xPar.h"
#include "../Core/x/xShadowSimple.h"
#include "../Core/p2/iColor.h"
struct zEntPickup : zEnt
{
@@ -37,20 +38,52 @@ struct zEntPickup : zEnt
uint16 pickupFlags; // 0x264
};
struct xEntPickupAsset
{
uint32 pickupHash;
uint16 pickupFlags;
uint16 pickupValue;
};
struct zPickupAuraInfo
{
float32 size;
float32 yoffset;
iColor_tag color;
};
extern zParEmitter* gEmitShinySparkles;
extern uint32 gEnableRewardsQueue;
extern zPickupAuraInfo zPickupAuraTable[];
void zEntPickup_Startup();
void zEntPickupInit(void* ent, void* asset);
void zEntPickupInit(zEntPickup* ent, xEntAsset* asset);
void zEntPickup_Setup(zEntPickup* p);
void zEntPickup_Setup();
int32 zEntPickupEventCB(xBase*, xBase* to, uint32 toEvent, const float32* toParam,
xBase* toParamWidget);
void zEntPickup_FlyToInterface(zEntPickup*, float32);
void zEntPickup_CheckAllPickupsAgainstPlayer(xScene* sc, float32 dt);
void zEntPickup_DoPickup(zEntPickup* ent);
void zEntPickup_GivePickup(zEntPickup* ent);
void zEntPickup_GiveAllRewardsNow();
void zEntPickup_Update(zEntPickup* ent, xScene* sc, float32 dt);
void zEntPickup_Reset(zEntPickup* ent);
void zEntPickup_Save(zEntPickup* ent, xSerial* s);
void zEntPickup_Load(zEntPickup* ent, xSerial* s);
void zEntPickup_FlushGrabbed();
void zEntPickup_MakeDroppable(zEntPickup* ent, xVec3* pos, xBase* dropParent);
void zEntPickup_Drop(zEntPickup* ent);
void zEntPickup_Render(zEntPickup* plist, uint32 pcount);
void zEntPickup_RenderOne(xEnt* ent);
void zEntPickup_RenderList(zEntPickup* plist, uint32 pcount);
void zEntPickup_UpdateFlyToInterface(zEntPickup* ent, uint32 pcount, float32 dt);
void zEntPickup_SceneEnter();
void zEntPickup_SceneReset();
void zEntPickup_SceneUpdate(float32 dt);
void zEntPickup_SpawnNRewards(uint32* pickups, uint32 num, xVec3* ppos);
void zEntPickup_SpawnNRewards(uint32* pickups, uint32 num, xVec3 pos);
void zEntPickup_RewardPostSetup();
#endif
+13
View File
@@ -398,6 +398,10 @@ void zEntPlayer_UnloadSounds();
void zEntPlayer_ShadowModelEnable();
void zEntPlayer_ShadowModelDisable();
void zEntPlayer_setBoulderMode(uint32 mode);
void zEntPlayer_GiveSpatula(int32);
void zEntPlayer_GivePatsSocksCurrentLevel(int32 quantity);
void zEntPlayer_LoadCheckPoint();
void zEntPlayer_MinimalRender(zEnt* ent);
@@ -405,6 +409,15 @@ uint8 zEntPlayer_MinimalUpdate(xEnt* ent, xScene* sc, float32 dt, xVec3& drive_m
void zEntPlayer_SNDPlay(_tagePlayerSnd player_snd, float32 delay);
void zEntPlayer_SNDPlayStream(_tagePlayerStreamSnd player_snd);
void zEntPlayer_SNDPlayStreamRandom(_tagePlayerStreamSnd player_snd_start,
_tagePlayerStreamSnd player_snd_end, float32 delay);
// Only plays sound if player's spatula count is between lower and upper
void zEntPlayer_SNDPlayStreamRandom(uint32 lower, uint32 upper,
_tagePlayerStreamSnd player_snd_start,
_tagePlayerStreamSnd player_snd_end, float32 delay);
void zEntPlayer_SNDSetVol(_tagePlayerSnd player_snd, float32 new_vol);
void zEntPlayer_SNDSetPitch(_tagePlayerSnd player_snd, float32 new_pitch);
void zEntPlayer_SNDStop(_tagePlayerSnd player_snd);
+2
View File
@@ -65,6 +65,8 @@ namespace bungee_state
};
void load(xBase& data, xDynAsset& asset, ulong32);
bool active();
bool landed();
} // namespace bungee_state
#endif
+3
View File
@@ -167,4 +167,7 @@ void zFXMuscleArmWave(xVec3* pos);
void zFX_SpawnBubbleMenuTrail(const xVec3* pos, uint32 num, const xVec3* pos_rnd,
const xVec3* vel_rnd);
void zFXPopOn(xEnt& ent, float32 rate, float32 time);
void zFXPopOff(xEnt& ent, float32 rate, float32 time);
#endif
+3
View File
@@ -9,6 +9,8 @@ struct zLODTable
float32 noRenderDist;
xModelBucket** lodBucket[3];
float32 lodDist[3];
ASSIGNMENT_OPERATOR(zLODTable)
};
struct zLODManager
@@ -24,5 +26,6 @@ void zLOD_Update(uint32 percent_update);
zLODTable* zLOD_Get(xEnt* ent);
void AddToLODList(xModelInstance* model);
xEnt* AddToLODList(xEnt* ent);
void zLOD_UseCustomTable(xEnt* ent, zLODTable* lod);
#endif
+1 -1
View File
@@ -65,7 +65,7 @@ extern float32 _1522; // -0.800000011920929 bf4ccccd
extern float32 _1523; // -2.0 c0000000
extern float32 _1524; // 66.0 42840000
extern float32 _1525; // -2500.0 c51c4000
extern float32 _1526; // -1.5 bfc00000
extern float32 _1526_0; // -1.5 bfc00000
extern float32 _1527; // 13.0 41500000
extern float32 _1528; // 3.5 40600000
extern float32 _1529; // -2.5 c0200000