Completely trash game but I might end my days soon so I push now
This commit is contained in:
+33
-15
@@ -11,6 +11,7 @@
|
||||
#include "config_LPC1769.h"
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include <math.h>
|
||||
|
||||
#include "GPIO.h"
|
||||
#include "SPI.h"
|
||||
@@ -108,9 +109,18 @@ Player CreatePlayer(){
|
||||
return player;
|
||||
}
|
||||
|
||||
int min(int x,int y){
|
||||
if(x > y){
|
||||
return y;
|
||||
}else{
|
||||
return x;
|
||||
}
|
||||
}
|
||||
|
||||
void RefreshPlayer(Point vector){
|
||||
if(player.Hitbox.Position.Y + vector.Y < 0){
|
||||
player.Hitbox.Position.Y = SCREEN_SIZE.Height + (player.Hitbox.Position.Y - (0-vector.Y));
|
||||
//player.Hitbox.Position.Y = SCREEN_SIZE.Height + (player.Hitbox.Position.Y - (0-vector.Y));
|
||||
player.Hitbox.Position.Y = player.Hitbox.Position.Y & SCREEN_SIZE.Height;
|
||||
}else{
|
||||
if(player.Hitbox.Position.Y + vector.Y >= SCREEN_SIZE.Height){
|
||||
player.Hitbox.Position.Y = vector.Y - (SCREEN_SIZE.Height - player.Hitbox.Position.Y);
|
||||
@@ -126,14 +136,24 @@ void RefreshPlayer(Point vector){
|
||||
if(player.Hitbox.Position.X < 0)
|
||||
player.Hitbox.Position.X = 0;
|
||||
|
||||
Size bigSize = {0,0};
|
||||
bigSize.Width = player.Hitbox.Size.Width + abs(vector.X);
|
||||
bigSize.Height = player.Hitbox.Size.Height + abs(vector.Y);
|
||||
|
||||
Rectangle rect = player.Hitbox;
|
||||
rect.Position = (Point){0,0};
|
||||
DrawPlayer(player,rect);
|
||||
Refresh_Area(player.Hitbox);
|
||||
Point bigPos = {0,0};
|
||||
bigPos.X = min(player.Hitbox.Position.X, player.Hitbox.Position.X - vector.X);
|
||||
bigPos.Y = min(player.Hitbox.Position.Y, player.Hitbox.Position.Y - vector.Y);
|
||||
bigPos.Y = bigPos.Y % SCREEN_SIZE.Height;
|
||||
|
||||
Refresh_Player_Area((Rectangle){bigPos,bigSize},player.Hitbox);
|
||||
|
||||
//Rectangle rect = player.Hitbox;
|
||||
//rect.Position = (Point){0,0};
|
||||
//DrawPlayer(player,rect);
|
||||
}
|
||||
|
||||
int main(void) {
|
||||
|
||||
init();
|
||||
InitButtons();
|
||||
InitTimer();
|
||||
@@ -189,18 +209,16 @@ int main(void) {
|
||||
momentum.X += vec.X;
|
||||
momentum.Y += vec.Y;
|
||||
|
||||
if(momentum.X > 35)
|
||||
momentum.X = 35;
|
||||
if(momentum.X < -40)
|
||||
momentum.X = -40;
|
||||
if(momentum.X > 20)
|
||||
momentum.X = 20;
|
||||
if(momentum.X < -25)
|
||||
momentum.X = -25;
|
||||
|
||||
if(momentum.Y > 35)
|
||||
momentum.Y = 35;
|
||||
if(momentum.Y < -35)
|
||||
momentum.Y = -35;
|
||||
if(momentum.Y > 20)
|
||||
momentum.Y = 20;
|
||||
if(momentum.Y < -20)
|
||||
momentum.Y = -20;
|
||||
|
||||
RefreshPlayer(momentum);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user