mirror of
https://github.com/thunderbrewhq/binana.git
synced 2025-12-12 09:52:28 +00:00
feat(profile): Weather packet structs
This commit is contained in:
parent
18168eeb55
commit
93fdfe1a79
1 changed files with 301 additions and 3 deletions
|
|
@ -2,9 +2,307 @@
|
||||||
#define WEATHER_H
|
#define WEATHER_H
|
||||||
|
|
||||||
DECLARE_STRUCT(Weather);
|
DECLARE_STRUCT(Weather);
|
||||||
|
DECLARE_STRUCT(Mists);
|
||||||
|
DECLARE_STRUCT(Rain);
|
||||||
|
DECLARE_STRUCT(Snow);
|
||||||
|
DECLARE_STRUCT(Sand);
|
||||||
|
|
||||||
|
DECLARE_STRUCT(PacketList_Packet_RainDrop);
|
||||||
|
DECLARE_STRUCT(Packet_RainDrop);
|
||||||
|
DECLARE_STRUCT(RainDropParticle);
|
||||||
|
DECLARE_STRUCT(RainParticleBuffer);
|
||||||
|
|
||||||
|
DECLARE_STRUCT(PacketList_Packet_RainPatter);
|
||||||
|
DECLARE_STRUCT(Packet_RainPatter);
|
||||||
|
DECLARE_STRUCT(RainPatterParticle);
|
||||||
|
DECLARE_STRUCT(RainPatterParticleBuffer);
|
||||||
|
|
||||||
|
DECLARE_STRUCT(PacketList_Packet_SnowFlake);
|
||||||
|
DECLARE_STRUCT(Packet_SnowFlake);
|
||||||
|
DECLARE_STRUCT(SnowFlakeParticle);
|
||||||
|
DECLARE_STRUCT(SnowFlakeParticleBuffer);
|
||||||
|
|
||||||
|
DECLARE_STRUCT(PacketList_Packet_SandGrain);
|
||||||
|
DECLARE_STRUCT(Packet_SandGrain);
|
||||||
|
DECLARE_STRUCT(SandGrainParticle);
|
||||||
|
DECLARE_STRUCT(SandGrainParticleBuffer);
|
||||||
|
|
||||||
|
#include "tempest/box.h"
|
||||||
#include "system/types.h"
|
#include "system/types.h"
|
||||||
#include "tempest/vector.h"
|
#include "tempest/vector.h"
|
||||||
|
#include "texture/texture.h"
|
||||||
|
#include "gx/shader.h"
|
||||||
|
#include "gx/buffer.h"
|
||||||
|
|
||||||
|
struct Mists
|
||||||
|
{
|
||||||
|
void** vtable;
|
||||||
|
C3Vector position;
|
||||||
|
uint32_t unk_10;
|
||||||
|
uint32_t unk_14;
|
||||||
|
uint32_t unk_18;
|
||||||
|
float scale;
|
||||||
|
uint32_t unk_20;
|
||||||
|
float rotationSpeed;
|
||||||
|
float fadeSpeed;
|
||||||
|
uint32_t unk_2C;
|
||||||
|
float opacity;
|
||||||
|
float lifeTime;
|
||||||
|
float spawnRate;
|
||||||
|
uint8_t unk_3C;
|
||||||
|
uint8_t padding[3];
|
||||||
|
CTexture* mistTexture;
|
||||||
|
uint32_t particleCount;
|
||||||
|
uint32_t unk_48;
|
||||||
|
uint32_t unk_4C;
|
||||||
|
uint32_t unk_50;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SandGrainParticle
|
||||||
|
{
|
||||||
|
C3Vector position;
|
||||||
|
C3Vector velocity;
|
||||||
|
float lifetime;
|
||||||
|
float size;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SandGrainParticleBuffer
|
||||||
|
{
|
||||||
|
uint32_t particleCount;
|
||||||
|
SandGrainParticle particles[6144];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Packet_SandGrain
|
||||||
|
{
|
||||||
|
Packet_SandGrain* prev;
|
||||||
|
Packet_SandGrain* next;
|
||||||
|
|
||||||
|
SandGrainParticleBuffer particlesBuffer;
|
||||||
|
|
||||||
|
uint32_t currParticle;
|
||||||
|
uint32_t packetStartTick;
|
||||||
|
uint32_t packetEndTick;
|
||||||
|
float packetBuildTime;
|
||||||
|
|
||||||
|
uint32_t field_C007;
|
||||||
|
uint32_t field_C008;
|
||||||
|
uint32_t field_C009;
|
||||||
|
|
||||||
|
CGxPool* gxPool;
|
||||||
|
CGxBuf* vertexBufHandle;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PacketList_Packet_SandGrain
|
||||||
|
{
|
||||||
|
int32_t unk_00;
|
||||||
|
Packet_SandGrain* prev;
|
||||||
|
Packet_SandGrain* next;
|
||||||
|
int32_t activePacketsCount;
|
||||||
|
int32_t freePacketsCount;
|
||||||
|
int32_t unk_14;
|
||||||
|
Packet_SandGrain* unk_18;
|
||||||
|
Packet_SandGrain* unk_1C;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Sand
|
||||||
|
{
|
||||||
|
int32_t useWeatherShaders;
|
||||||
|
CAaBox bbox;
|
||||||
|
Mists mists;
|
||||||
|
|
||||||
|
PacketList_Packet_SandGrain sandGrainPacketList;
|
||||||
|
|
||||||
|
Packet_SandGrain* sandGrainPacketPtr;
|
||||||
|
float unk_94;
|
||||||
|
CGxShader* shader;
|
||||||
|
float unk_9C;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SnowFlakeParticle
|
||||||
|
{
|
||||||
|
C3Vector position;
|
||||||
|
C3Vector velocity;
|
||||||
|
float lifetime;
|
||||||
|
float size;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SnowFlakeParticleBuffer
|
||||||
|
{
|
||||||
|
uint32_t particleCount;
|
||||||
|
SnowFlakeParticle particles[6144];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Packet_SnowFlake
|
||||||
|
{
|
||||||
|
Packet_SnowFlake* prev;
|
||||||
|
Packet_SnowFlake* next;
|
||||||
|
|
||||||
|
SnowFlakeParticleBuffer particlesBuffer;
|
||||||
|
|
||||||
|
uint32_t currParticle;
|
||||||
|
uint32_t packetStartTick;
|
||||||
|
uint32_t packetEndTick;
|
||||||
|
float packetBuildTime;
|
||||||
|
|
||||||
|
uint32_t field_C007;
|
||||||
|
uint32_t field_C008;
|
||||||
|
uint32_t field_C009;
|
||||||
|
|
||||||
|
CGxPool* gxPool;
|
||||||
|
CGxBuf* vertexBufHandle;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PacketList_Packet_SnowFlake
|
||||||
|
{
|
||||||
|
int32_t unk_00;
|
||||||
|
Packet_SnowFlake* prev;
|
||||||
|
Packet_SnowFlake* next;
|
||||||
|
int32_t activePacketsCount;
|
||||||
|
int32_t freePacketsCount;
|
||||||
|
int32_t unk_14;
|
||||||
|
Packet_SnowFlake* unk_18;
|
||||||
|
Packet_SnowFlake* unk_1C;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Snow
|
||||||
|
{
|
||||||
|
int32_t useWeatherShaders;
|
||||||
|
CAaBox bbox;
|
||||||
|
Mists mists;
|
||||||
|
|
||||||
|
//PacketList_Packet_SnowFlake snowFlakePacketList;
|
||||||
|
int32_t unk_70;
|
||||||
|
void* unk_74;
|
||||||
|
void* unk_78;
|
||||||
|
int32_t activePacketsCount;
|
||||||
|
int32_t freePacketsCount;
|
||||||
|
int32_t unk_84;
|
||||||
|
void* unk_88;
|
||||||
|
void* unk_8C;
|
||||||
|
//end
|
||||||
|
|
||||||
|
Packet_SnowFlake* snowFlakePacketPtr;
|
||||||
|
float unk_94;
|
||||||
|
CTexture* snowFlakeTex;
|
||||||
|
CGxShader* shaderPtr;
|
||||||
|
int32_t unk_A0;
|
||||||
|
int32_t unk_A4;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct RainPatterParticle
|
||||||
|
{
|
||||||
|
C3Vector position;
|
||||||
|
float lifetime;
|
||||||
|
float size;
|
||||||
|
float unk;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct RainPatterParticleBuffer
|
||||||
|
{
|
||||||
|
uint32_t particleCount;
|
||||||
|
RainPatterParticle particles[6144];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Packet_RainPatter
|
||||||
|
{
|
||||||
|
Packet_RainPatter* prev;
|
||||||
|
Packet_RainPatter* next;
|
||||||
|
|
||||||
|
RainPatterParticleBuffer particlesBuffer;
|
||||||
|
|
||||||
|
uint32_t currParticle;
|
||||||
|
uint32_t packetStartTick;
|
||||||
|
uint32_t packetEndTick;
|
||||||
|
float packetBuildTime;
|
||||||
|
|
||||||
|
uint32_t field_9007;
|
||||||
|
uint32_t field_9008;
|
||||||
|
uint32_t field_9009;
|
||||||
|
|
||||||
|
CGxPool* gxPool;
|
||||||
|
CGxBuf* vertexBufHandle;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PacketList_Packet_RainPatter
|
||||||
|
{
|
||||||
|
int32_t unk_00;
|
||||||
|
Packet_RainPatter* prev;
|
||||||
|
Packet_RainPatter* next;
|
||||||
|
int32_t activePacketsCount;
|
||||||
|
int32_t freePacketsCount;
|
||||||
|
int32_t unk_14;
|
||||||
|
Packet_RainPatter* unk_18;
|
||||||
|
Packet_RainPatter* unk_1C;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct RainDropParticle
|
||||||
|
{
|
||||||
|
C3Vector position;
|
||||||
|
C3Vector velocity;
|
||||||
|
CImVector color;
|
||||||
|
float size;
|
||||||
|
float unk;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct RainParticleBuffer
|
||||||
|
{
|
||||||
|
uint32_t particleCount;
|
||||||
|
RainDropParticle particles[6144];
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Packet_RainDrop
|
||||||
|
{
|
||||||
|
Packet_RainDrop* prev;
|
||||||
|
Packet_RainDrop* next;
|
||||||
|
|
||||||
|
RainParticleBuffer particlesBuffer;
|
||||||
|
|
||||||
|
uint32_t currParticle;
|
||||||
|
uint32_t packetStartTick;
|
||||||
|
uint32_t packetEndTick;
|
||||||
|
float packetBuildTime;
|
||||||
|
|
||||||
|
uint32_t field_D807;
|
||||||
|
uint32_t field_D808;
|
||||||
|
uint32_t field_D809;
|
||||||
|
|
||||||
|
CGxPool* gxPool;
|
||||||
|
CGxBuf* vertexBufHandle;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct PacketList_Packet_RainDrop
|
||||||
|
{
|
||||||
|
int32_t unk_00;
|
||||||
|
Packet_RainDrop* prev;
|
||||||
|
Packet_RainDrop* next;
|
||||||
|
int32_t activePacketsCount;
|
||||||
|
int32_t freePacketsCount;
|
||||||
|
int32_t unk_14;
|
||||||
|
Packet_RainDrop* unk_18;
|
||||||
|
Packet_RainDrop* unk_1C;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Rain
|
||||||
|
{
|
||||||
|
int32_t useWeatherShaders;
|
||||||
|
CAaBox bbox;
|
||||||
|
Mists mists;
|
||||||
|
|
||||||
|
PacketList_Packet_RainDrop rainDropPacketList;
|
||||||
|
PacketList_Packet_RainPatter rainPatterPacketList;
|
||||||
|
|
||||||
|
Packet_RainDrop* rainDropPacketPtr;
|
||||||
|
float unk_B4; // particle lifetime?
|
||||||
|
Packet_RainPatter* rainPatterPacketPtr;
|
||||||
|
|
||||||
|
CTexture* rainDropTex;
|
||||||
|
CGxShader* shaderRain;
|
||||||
|
CTexture* rainDropSplashTex;
|
||||||
|
CGxShader* shaderPatter;
|
||||||
|
|
||||||
|
float particlesPerFrame;
|
||||||
|
float intensity;
|
||||||
|
};
|
||||||
|
|
||||||
struct Weather
|
struct Weather
|
||||||
{
|
{
|
||||||
|
|
@ -27,9 +325,9 @@ struct Weather
|
||||||
|
|
||||||
char texturePath[260];
|
char texturePath[260];
|
||||||
|
|
||||||
void* RainPtr;
|
Rain* rain;
|
||||||
void* SnowPtr;
|
Snow* snow;
|
||||||
void* SandPtr;
|
Sand* sand;
|
||||||
|
|
||||||
void* unkObject;
|
void* unkObject;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue