Fixed inline issues

This commit is contained in:
Wexos 2022-01-04 17:01:26 +01:00
parent ba5b891dfd
commit 6c49d950eb
6 changed files with 20 additions and 7 deletions

View File

@ -13,5 +13,6 @@
// CALL_INLINE_FUNC(someFunction, 0);
#define INLINE_FUNC_DECL(name, ...) name(void *****, __VA_ARGS__)
#define INLINE_FUNC_DECL_NO_ARG(name) name(void *****)
#define CALL_INLINE_FUNC(name, ...) name((void *****)0, __VA_ARGS__)
#define CALL_INLINE_FUNC_NO_ARG(name) name((void *****)0)

View File

@ -57,6 +57,13 @@ namespace JGeometry {
/* Constructors */
inline TVec3() {}
template<typename T>
INLINE_FUNC_DECL(TVec3, T _x, T _y, T _z) {
x = _x;
y = _y;
z = _z;
}
template<typename T>
TVec3(T _x, T _y, T _z);

View File

@ -1,10 +1,11 @@
#include "Game/Gravity.h"
#include "Game/Util.h"
#include "Inline.h"
DiskGravity::DiskGravity() :
PlanetGravity(),
mLocalPosition(0.0f, 50.0f, 0.0f),
mTranslation(0.0f, 50.0f, 0.0f),
CALL_INLINE_FUNC(mLocalPosition, 0.0f, 50.0f, 0.0f),
CALL_INLINE_FUNC(mTranslation, 0.0f, 50.0f, 0.0f),
mLocalDirection(0, 1, 0),
mRotation(0, 1, 0),
mSideDirection(1, 0, 0),

View File

@ -1,10 +1,11 @@
#include "Game/Gravity.h"
#include "Game/Util.h"
#include "Inline.h"
DiskTorusGravity::DiskTorusGravity() :
PlanetGravity(),
mLocalPosition(0.0f, 50.0f, 0.0f),
mTranslation(0.0f, 50.0f, 0.0f),
CALL_INLINE_FUNC(mLocalPosition, 0.0f, 50.0f, 0.0f),
CALL_INLINE_FUNC(mTranslation, 0.0f, 50.0f, 0.0f),
mLocalDirection(0, 1, 0),
mRotation(0, 1, 0)
{

View File

@ -1,13 +1,14 @@
#include "Game/Gravity.h"
#include "Game/Util.h"
#include "JSystem/JMath.h"
#include "Inline.h"
ParallelGravity::ParallelGravity() :
PlanetGravity(),
mPlanePosition(0, 0, 0),
mPlaneUpVec(0.0f, 1.0f, 0.0f),
CALL_INLINE_FUNC(mPlaneUpVec, 0.0f, 1.0f, 0.0f),
mWorldPlanePosition(0, 0, 0),
mWorldPlaneUpVec(0.0f, 1.0f, 0.0f)
CALL_INLINE_FUNC(mWorldPlaneUpVec, 0.0f, 1.0f, 0.0f)
{
mCylinderHeight = 1000.0f;
mCylinderRadius = 500.0f;

View File

@ -1,5 +1,6 @@
#include "Game/MapObj/WatchTowerRotateStep.h"
#include "Game/Util.h"
#include "Inline.h"
NrvWatchTowerRotateStep::WatchTowerRotateStepNrvWait NrvWatchTowerRotateStep::WatchTowerRotateStepNrvWait::sInstance;
NrvWatchTowerRotateStep::WatchTowerRotateStepNrvMoveStart NrvWatchTowerRotateStep::WatchTowerRotateStepNrvMoveStart::sInstance;
@ -61,7 +62,8 @@ void WatchTowerRotateStep::initLift(const JMapInfoIter &rIter) {
mLifts[i]->mCalcOwnMtx = false;
MR::initCollisionParts(mLifts[i], "WatchTowerRotateStepLift", getSensor(NULL), NULL);
MR::initShadowVolumeBox(mLifts[i], TVec3f(600.0f, 200.0f, 400.0f), mLifts[i]->getBaseMtx());
TVec3f local68 = CALL_INLINE_FUNC(TVec3f, 600.0f, 200.0f, 400.0f);
MR::initShadowVolumeBox(mLifts[i], local68, mLifts[i]->getBaseMtx());
MR::setShadowVolumeStartDropOffset(mLifts[i], "WatchTowerRotateStepLift", 300.0f);
MR::setShadowDropLength(mLifts[i], "WatchTowerRotateStepLift", 370.0f);