1#include "Game/MapObj/FirePressure.hpp"
2#include "Game/MapObj/FirePressureBulletHolder.hpp"
3#include "Game/Scene/SceneObjHolder.hpp"
4#include <JSystem/JMath/JMath.hpp>
6FirePressure::~FirePressure() {
10FirePressure::FirePressure(
const char *pName) :
PressureBase(pName) {
11 mDisableCollsion =
false;
16 MR::getJMapInfoArg7NoInit(rIter, &mDisableCollsion);
19void FirePressure::initBullet(
const JMapInfoIter &rIter) {
20 MR::createSceneObj(SceneObj_FirePressureBulletHolder);
23bool FirePressure::shotBullet(f32 a1) {
28 if (bullet ==
nullptr) {
33 calcGunPointFromCannon(&gunPoint);
34 bullet->shotFireBullet(
this, gunPoint, a1, isShotTypeFollow(), mDisableCollsion);
39void FirePressure::calcGunPointFromCannon(TPos3f *pOutPoint) {
41 JMath::gekko_ps_copy12(jointMtx, MR::getJointMtx(
this,
"Cannon1"));
43 f32 z = jointMtx[2][0];
44 f32 y = jointMtx[1][0];
45 f32 x = jointMtx[0][0];
46 stack_2C.set(x, y, z);
51 stack_20.set(x, y, z);
52 JMAVECScaleAdd(stack_2C.toCVec(), stack_20.toCVec(), stack_20.toVec(), 200.0f);
53 JMath::gekko_ps_copy12(pOutPoint, jointMtx);
58 stack_14.set(x, y, z);
64 MR::makeMtxFrontUpPos(pOutPoint, stack_2C, stack_14, stack_20);
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.