@ -26,7 +26,7 @@ struct CollisionEvent collisionDetect(int objYpos, int objXpos){
}
if(objYpos < 1 || objYpos > viewportWinRows-2 || objXpos < 1 || objXpos > viewportWinCols-2 ){
if((objYpos < 1 || objYpos > viewportWinRows-2) || (objXpos < 1 || objXpos > viewportWinCols-2)){
struct CollisionEvent collisionEvent = {.collidedWithBoundary=1};
return collisionEvent;
@ -4,9 +4,6 @@
#include <weaponsSystem.h>
void updateViewportWin(){
mvwprintw(viewportWin,10,10,"++++");
mvwprintw(viewportWin,11,10,"+ +");
mvwprintw(viewportWin,12,10,"+ +");
int i;
for(i=0; i<MAX_ITEMS; i++){
if(allItems[i].isAlive){
@ -25,7 +25,7 @@ void tryRandomEvent(){
struct OpenPos openPos = getOpenPos();
addItem("Pistol Magazine", openPos.y, openPos.x);
if (eventTrigger < 10+zombieModifier){
if (eventTrigger < 1+zombieModifier){
addZombie(openPos.y, openPos.x);
@ -8,6 +8,7 @@ void gameLoop(){
while(1) {
secsElapsed = (float)(clock() - startTime)/CLOCKS_PER_SEC;
moveProjectiles();
updateViewportWin();
if((float)(clock() - timerStart)/CLOCKS_PER_SEC > 1){
tryRandomEvent();
timerStart=clock();
@ -16,8 +17,8 @@ void gameLoop(){
zombieModifier++;
moveZombies();
updateInfoWin();
doupdate();
int ch;
ch = getch();
@ -97,9 +98,8 @@ void gameLoop(){
allEntities[0].prevXpos=allEntities[0].curXpos;
break;
checkPlayerCollision();
// usleep(30000);
@ -25,7 +25,7 @@ void initializeWorld() {
struct Weapon pistol = {.type="Pistol", .isAlive=1, .projectileRange=10, .maxCapacity=12, .curCapacity=12, .symbols="-\\|/-\\|/", .projectileSpeed=.02};
passableChars="#";
unpassableChars="+\\|";
unpassableChars="+";
viewportWinRows = 19;
viewportWinCols = 80;
@ -7,6 +7,7 @@ void moveProjectiles(){
if(allProjectiles[i].isAlive && ((float)(clock() - allProjectiles[i].lastMoveClock)/CLOCKS_PER_SEC) > allProjectiles[i].speed){
allProjectiles[i].prevYpos=allProjectiles[i].curYpos;
allProjectiles[i].prevXpos=allProjectiles[i].curXpos;
checkProjectileCollision(&allProjectiles[i]);
switch(allProjectiles[i].direction){
case 'w':{
allProjectiles[i].curYpos--;