From 8c406f33fe1a02b9e54f24b78aee98373f1191bd Mon Sep 17 00:00:00 2001 From: Jerry Aldrich Date: Tue, 7 Apr 2015 20:43:46 -0500 Subject: [PATCH] Create checkPlayerCollisions in collisionDetection.c --- collisionDetection.c | 19 +++++++++++++++++++ gameLoop.c | 20 ++------------------ 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/collisionDetection.c b/collisionDetection.c index a958b0b..ba68ec3 100644 --- a/collisionDetection.c +++ b/collisionDetection.c @@ -21,3 +21,22 @@ struct CollisionEvent collisionDetect(int objYpos, int objXpos){ return collisionEvent; } +void checkPlayerCollisions(){ + struct CollisionEvent collisionEvent = collisionDetect(allEntities[0].curYpos, allEntities[0].curXpos); + if(collisionEvent.collidedWithEntity){ + if(!strcmp(collisionEvent.collidedWithEntity->type,"zombie")){ + collisionEvent.collidedWithEntity->isAlive=0; + mvwaddch(viewportWin, allEntities[0].curYpos, allEntities[0].curXpos, ' '); + drawGameOverWin(); + } + } + if(collisionEvent.collidedWithItem){ + if(!strcmp(collisionEvent.collidedWithItem->type,"Pistol Magazine")){ + if(allEntities[0].weapons[1].isAlive){ + addMagazine(&allEntities[0].weapons[1]); + collisionEvent.collidedWithItem->isAlive=0; + } + } + } +} + diff --git a/gameLoop.c b/gameLoop.c index 58873e3..b678bb1 100644 --- a/gameLoop.c +++ b/gameLoop.c @@ -94,27 +94,11 @@ void gameLoop(){ if(allEntities[0].weapons[allEntities[0].curWeapon].curMags > 0 && allEntities[0].weapons[allEntities[0].curWeapon].curCapacity < allEntities[0].weapons[allEntities[0].curWeapon].maxCapacity ){ reload(&allEntities[0].weapons[allEntities[0].curWeapon]); } - } - + } default: if (ch != ERR) {lastPressed=ch;}; break; } - struct CollisionEvent collisionEvent = collisionDetect(allEntities[0].curYpos, allEntities[0].curXpos); - if(collisionEvent.collidedWithEntity){ - if(!strcmp(collisionEvent.collidedWithEntity->type,"zombie")){ - collisionEvent.collidedWithEntity->isAlive=0; - mvwaddch(viewportWin, allEntities[0].curYpos, allEntities[0].curXpos, ' '); - drawGameOverWin(); - } - } - if(collisionEvent.collidedWithItem){ - if(!strcmp(collisionEvent.collidedWithItem->type,"Pistol Magazine")){ - if(allEntities[0].weapons[1].isAlive){ - addMagazine(&allEntities[0].weapons[1]); - collisionEvent.collidedWithItem->isAlive=0; - } - } - } + checkPlayerCollisions(); } }