summaryrefslogtreecommitdiff
path: root/src/shyguy.cpp
diff options
context:
space:
mode:
authorTreeki <treeki@gmail.com>2012-12-02 02:33:34 +0100
committerTreeki <treeki@gmail.com>2012-12-02 02:33:34 +0100
commit15af665eac26f9a29b864617d571ef539a6c42b0 (patch)
tree51505a63f6160cde691b3b9df15303d8b98fa0a1 /src/shyguy.cpp
parent25bb4867ecfde3ec489b891b182cc0fdd2711ad3 (diff)
downloadkamek-15af665eac26f9a29b864617d571ef539a6c42b0.tar.gz
kamek-15af665eac26f9a29b864617d571ef539a6c42b0.zip
collisionMgr_c updated
Diffstat (limited to 'src/shyguy.cpp')
-rw-r--r--src/shyguy.cpp36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/shyguy.cpp b/src/shyguy.cpp
index 5a21e6c..b2eef75 100644
--- a/src/shyguy.cpp
+++ b/src/shyguy.cpp
@@ -380,8 +380,8 @@ bool daShyGuy::calculateTileCollisions() {
HandleYSpeed();
doSpriteMovement();
- cmgr_returnValue = collMgr.CollidedWithTile();
- collMgr.execute();
+ cmgr_returnValue = collMgr.isOnTopOfTile();
+ collMgr.calculateBelowCollisionWithSmokeEffect();
if (isBouncing) {
stuffRelatingToCollisions(0.1875f, 1.0f, 0.5f);
@@ -395,7 +395,7 @@ bool daShyGuy::calculateTileCollisions() {
else
direction = 1;
- if (collMgr.CollidedWithTile()) {
+ if (collMgr.isOnTopOfTile()) {
// Walking into a tile branch
if (cmgr_returnValue == 0)
@@ -419,23 +419,23 @@ bool daShyGuy::calculateTileCollisions() {
// Bouncing checks
if (_34A & 4) {
Vec v = (Vec){0.0f, 1.0f, 0.0f};
- collMgr.parent_speed_ptr = &v;
+ collMgr.pSpeed = &v;
- if (collMgr.SomethingSemiImportant(collMgr.bitfield_for_checks))
+ if (collMgr.calculateAboveCollision(collMgr.outputMaybe))
speed.y = 0.0f;
- collMgr.parent_speed_ptr = &speed;
+ collMgr.pSpeed = &speed;
} else {
- if (collMgr.SomethingSemiImportant(collMgr.bitfield_for_checks))
+ if (collMgr.calculateAboveCollision(collMgr.outputMaybe))
speed.y = 0.0f;
}
- collMgr.s_8006FA40(0);
+ collMgr.calculateAdjacentCollision(0);
// Switch Direction
- if (collMgr.bitfield_for_checks & (0x15 << direction)) {
- if (collMgr.CollidedWithTile()) {
+ if (collMgr.outputMaybe & (0x15 << direction)) {
+ if (collMgr.isOnTopOfTile()) {
isBouncing = true;
}
return true;
@@ -631,16 +631,16 @@ int daShyGuy::onCreate() {
_324 = 16.0f;
// These structs tell stupid collider what to collide with - these are from koopa troopa
- static const u8 one[16] = {0,0,0,1, 0,0,0xC0,0, 0,0,0x40,0, 0,0,0,0};
- static const u8 two[12] = {0,0,0,0, 0,0,0,0, 0,0,0xC0,0};
- static const u8 three[16] = {0,0,0,1, 0,0,0x60,0, 0,0,0x90,0, 0,0,0x60,0};
+ static const lineSensor_s below(12<<12, 4<<12, 0<<12);
+ static const pointSensor_s above(0<<12, 12<<12);
+ static const lineSensor_s adjacent(6<<12, 9<<12, 6<<12);
- collMgr.Init(this, one, two, three);
- collMgr.execute();
+ collMgr.init(this, &below, &above, &adjacent);
+ collMgr.calculateBelowCollisionWithSmokeEffect();
- cmgr_returnValue = collMgr.CollidedWithTile();
+ cmgr_returnValue = collMgr.isOnTopOfTile();
- if (collMgr.CollidedWithTile())
+ if (collMgr.isOnTopOfTile())
isBouncing = false;
else
isBouncing = true;
@@ -1188,7 +1188,7 @@ void daShyGuy::updateModelMatrices() {
// static const u8 three[16] = {
// 0x01,0x80,0x41,0x01, 0xFF,0xFF,0x90,0x00, 0x00,0x00,0x80,0x00, 0x00,0x00,0xEF0,0x00
// };
- // spawned->collMgr.Init(spawned, two, one, three);
+ // spawned->collMgr.init(spawned, two, one, three);
}