From 8fcb7e43bf9009a0236120e3f893e10bb79274bd Mon Sep 17 00:00:00 2001 From: Weston Salinas Date: Sat, 1 Apr 2023 18:23:35 -0500 Subject: [PATCH] Slight Controls Change - before player gets second portal gun l/r/z all shoot blue portal - after player gets second portal gun l shoots blue, and r and z shoot orange portal --- src/scene/scene.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/scene/scene.c b/src/scene/scene.c index 048ffff..046b7c5 100644 --- a/src/scene/scene.c +++ b/src/scene/scene.c @@ -255,14 +255,21 @@ void sceneCheckPortals(struct Scene* scene) { quatMultVector(&scene->player.lookTransform.rotation, &raycastRay.dir, &raycastRay.dir); quatMultVector(&scene->player.lookTransform.rotation, &gUp, &playerUp); - if (controllerGetButtonDown(0, Z_TRIG) && (scene->player.flags & PlayerHasSecondPortalGun) && !playerIsGrabbing(&scene->player)) { + int bluePortalFlags; + if (scene->player.flags & PlayerHasSecondPortalGun){ + bluePortalFlags = (L_TRIG); + }else{ + bluePortalFlags = (L_TRIG | Z_TRIG | R_TRIG); + } + + if (controllerGetButtonDown(0, Z_TRIG | R_TRIG) && (scene->player.flags & PlayerHasSecondPortalGun) && !playerIsGrabbing(&scene->player)) { sceneFirePortal(scene, &raycastRay, &playerUp, 0, scene->player.body.currentRoom, 1, 0); scene->player.flags |= PlayerJustShotPortalGun; scene->last_portal_indx_shot=0; soundPlayerPlay(soundsPortalgunShoot[0], 1.0f, 1.0f, NULL, NULL); } - if (controllerGetButtonDown(0, R_TRIG | L_TRIG) && (scene->player.flags & PlayerHasFirstPortalGun) && !playerIsGrabbing(&scene->player)) { + if (controllerGetButtonDown(0, bluePortalFlags) && (scene->player.flags & PlayerHasFirstPortalGun) && !playerIsGrabbing(&scene->player)) { sceneFirePortal(scene, &raycastRay, &playerUp, 1, scene->player.body.currentRoom, 1, 0); scene->player.flags |= PlayerJustShotPortalGun; scene->last_portal_indx_shot=1;