very bad collision(work in progress)

This commit is contained in:
swim67667
2026-06-22 01:29:58 -04:00
commit 22377c6f1a
26 changed files with 4453 additions and 0 deletions

48
src/collision.c Normal file
View File

@@ -0,0 +1,48 @@
#include "world.h"
#include <math.h>
#include "config.h"
#include "collision.h"
#include "player.h"
void checkCollision(){
float playerx=0.0;
float playery=0.0;
float plrsize=0.0;
for (int i = 0; i < MAX_ENTITIES; i++){
Entity *e = &entities[i];
if (!e->active)
continue;
if(e->isPlayer == false){
float objposx=e->position.x;
//float objposy=e->position.y;
float objsize=e->size;
if(playerx-(plrsize/2)<objposx+(objsize/2) && playerx-(plrsize/2)>objposx-(objsize/2)){
ApplyForce(
e,
(Vector2){10000, 1000}
);
if(dir){
ApplyForce(
player,
(Vector2){(curhorvel*3), 1000}
);
}
else{
ApplyForce(
player,
(Vector2){-(curhorvel*3), 1000}
);
}
}
}
else{
playerx=e->position.x;
playery=e->position.y;
if(playery==playery)
plrsize=e->size;
}
}
}