updates to spritecomp and keyboard ctrlr

This commit is contained in:
Alan Youngblood 2023-08-07 17:14:17 -04:00
parent 838426ead3
commit 3ad0265dbd
4 changed files with 42 additions and 42 deletions

View File

@ -1,6 +1,6 @@
{ "frames": [ { "frames": [
{ {
"filename": "Kaiju-Turtle 0.aseprite", "filename": "0",
"frame": { "x": 0, "y": 0, "w": 32, "h": 32 }, "frame": { "x": 0, "y": 0, "w": 32, "h": 32 },
"rotated": false, "rotated": false,
"trimmed": false, "trimmed": false,
@ -9,7 +9,7 @@
"duration": 100 "duration": 100
}, },
{ {
"filename": "Kaiju-Turtle 1.aseprite", "filename": "1",
"frame": { "x": 32, "y": 0, "w": 32, "h": 32 }, "frame": { "x": 32, "y": 0, "w": 32, "h": 32 },
"rotated": false, "rotated": false,
"trimmed": false, "trimmed": false,
@ -18,7 +18,7 @@
"duration": 100 "duration": 100
}, },
{ {
"filename": "Kaiju-Turtle 2.aseprite", "filename": "2",
"frame": { "x": 64, "y": 0, "w": 32, "h": 32 }, "frame": { "x": 64, "y": 0, "w": 32, "h": 32 },
"rotated": false, "rotated": false,
"trimmed": false, "trimmed": false,
@ -27,7 +27,7 @@
"duration": 100 "duration": 100
}, },
{ {
"filename": "Kaiju-Turtle 3.aseprite", "filename": "3",
"frame": { "x": 0, "y": 32, "w": 32, "h": 32 }, "frame": { "x": 0, "y": 32, "w": 32, "h": 32 },
"rotated": false, "rotated": false,
"trimmed": false, "trimmed": false,
@ -36,7 +36,7 @@
"duration": 100 "duration": 100
}, },
{ {
"filename": "Kaiju-Turtle 4.aseprite", "filename": "4",
"frame": { "x": 32, "y": 32, "w": 32, "h": 32 }, "frame": { "x": 32, "y": 32, "w": 32, "h": 32 },
"rotated": false, "rotated": false,
"trimmed": false, "trimmed": false,

View File

@ -42,25 +42,25 @@ public:
{ {
switch (Game::event.key.keysym.sym) switch (Game::event.key.keysym.sym)
{ {
case SDLK_UP: case SDLK_w:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
// if(transform->position.y>0){ // if(transform->position.y>0){
// ====== Get Player.yTile and scan column up ScreenTilesHeight/2 on Player.xTile-1, Player.xTile, and Player.xTile+1 return first hit that is > 0 for each row. // ====== Get Player.yTile and scan column up ScreenTilesHeight/2 on Player.xTile-1, Player.xTile, and Player.xTile+1 return first hit that is > 0 for each row.
// transform->tilePos.x // transform->tilePos.x
transform->velocity.y = -1; transform->velocity.y = -1;
// if(Game::playerIsGrounded){ // if(Game::playerIsGrounded){
sprite->Play("Walk"); sprite->Play("move-n");
// } // }
sprite->spriteFlip = SDL_FLIP_NONE; sprite->spriteFlip = SDL_FLIP_NONE;
// } // }
} }
break; break;
case SDLK_DOWN: case SDLK_s:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
if(transform->position.y<Game::levelMap.h){ if(transform->position.y<Game::levelMap.h){
transform->velocity.y = 1; transform->velocity.y = 1;
// if(Game::playerIsGrounded){ // if(Game::playerIsGrounded){
sprite->Play("Walk"); sprite->Play("move-s");
// } // }
int *borders; int *borders;
borders = Game::predictCollisions(); borders = Game::predictCollisions();
@ -68,12 +68,12 @@ public:
} }
} }
break; break;
case SDLK_LEFT: case SDLK_a:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
if(transform->position.x>Game::levelMap.x){ if(transform->position.x>Game::levelMap.x){
transform->velocity.x = -1; transform->velocity.x = -1;
// if(Game::playerIsGrounded){ // if(Game::playerIsGrounded){
sprite->Play("Walk"); sprite->Play("move-w");
// } // }
sprite->spriteFlip = SDL_FLIP_NONE; sprite->spriteFlip = SDL_FLIP_NONE;
} }
@ -112,7 +112,7 @@ public:
}*/ }*/
} }
break; break;
case SDLK_RIGHT: case SDLK_d:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
// &entity->getComponent<PlayerController>().setLastSafePos(Vector2D(transform->position.x,transform->position.y)); // &entity->getComponent<PlayerController>().setLastSafePos(Vector2D(transform->position.x,transform->position.y));
// playerCtrl->lastSafePosition.x = transform->position.x; // playerCtrl->lastSafePosition.x = transform->position.x;
@ -124,7 +124,7 @@ public:
if(transform->position.x<Game::levelMap.w){ if(transform->position.x<Game::levelMap.w){
transform->velocity.x = 1; transform->velocity.x = 1;
// if(Game::playerIsGrounded){ // if(Game::playerIsGrounded){
sprite->Play("Walk"); sprite->Play("move-w");
// } // }
sprite->spriteFlip = SDL_FLIP_HORIZONTAL; sprite->spriteFlip = SDL_FLIP_HORIZONTAL;
} }
@ -167,7 +167,7 @@ public:
} }
// transform->lastSafePos = Vector2D(transform->position.x,transform->position.y); // transform->lastSafePos = Vector2D(transform->position.x,transform->position.y);
Game::gravityOnPlayer = true; Game::gravityOnPlayer = true;
sprite->Play("Jump"); // sprite->Play("Jump");
transform->velocity.y = -2; transform->velocity.y = -2;
} }
} }
@ -189,10 +189,10 @@ public:
{ {
switch (Game::event.key.keysym.sym) switch (Game::event.key.keysym.sym)
{ {
case SDLK_LEFT: case SDLK_a:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
transform->velocity.x = 0; transform->velocity.x = 0;
sprite->Play("Idle"); sprite->Play("move-w");
Game::playerIsGrounded = false; Game::playerIsGrounded = false;
// if (!Game::gravityOnPlayer){ // if (!Game::gravityOnPlayer){
// Game::gravityOnPlayer = true; // Game::gravityOnPlayer = true;
@ -200,29 +200,29 @@ public:
// } // }
} }
break; break;
case SDLK_RIGHT: case SDLK_d:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
transform->velocity.x = 0; transform->velocity.x = 0;
sprite->Play("Idle"); sprite->Play("move-w");
// if (!Game::gravityOnPlayer){ // if (!Game::gravityOnPlayer){
// Game::gravityOnPlayer = true; // Game::gravityOnPlayer = true;
// } // }
} }
break; break;
case SDLK_UP: case SDLK_w:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
transform->velocity.y = 0; transform->velocity.y = 0;
sprite->Play("Idle"); sprite->Play("move-n");
// if (!Game::gravityOnPlayer){ // if (!Game::gravityOnPlayer){
// Game::gravityOnPlayer = true; // Game::gravityOnPlayer = true;
// // sprite->Play("Fall"); // // sprite->Play("Fall");
// } // }
} }
break; break;
case SDLK_DOWN: case SDLK_s:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
transform->velocity.y = 0; transform->velocity.y = 0;
sprite->Play("Idle"); sprite->Play("move-s");
// if (!Game::gravityOnPlayer){ // if (!Game::gravityOnPlayer){
// Game::gravityOnPlayer = true; // Game::gravityOnPlayer = true;
// } // }
@ -249,13 +249,13 @@ public:
// break; // break;
case SDLK_k: case SDLK_k:
break; break;
case SDLK_j: // case SDLK_j:
if(Game::gsm->currentState == GameStateManager::ST_COREGAME){ // if(Game::gsm->currentState == GameStateManager::ST_COREGAME){
transform->velocity.y = 0; // transform->velocity.y = 0;
sprite->Play("Fall"); // sprite->Play("Fall");
Game::gravityOnPlayer = true; // Game::gravityOnPlayer = true;
} // }
break; // break;
case SDLK_u: case SDLK_u:
break; break;
case SDLK_i: case SDLK_i:

View File

@ -27,10 +27,10 @@ private:
TransformComponent *transform; TransformComponent *transform;
SDL_Texture *texture; SDL_Texture *texture;
SDL_Rect srcRect, destRect; SDL_Rect srcRect, destRect;
char letter;
int frames = 0; int frames = 0;
int speed = 100; int speed = 100;
int letterWidth, letterHeight;
int scale = 1; int scale = 1;
public: public:
@ -99,15 +99,15 @@ public:
Play(name); Play(name);
} }
Animation idle = Animation(0,3,100); Animation moveN = Animation(0,1,100);
animations.emplace("Idle", idle); animations.emplace("move-n", moveN);
Animation walk = Animation(1,3,100); Animation moveW = Animation(2,1,100);
animations.emplace("Walk", walk); animations.emplace("move-w", moveW);
Animation jump = Animation(2,1,100); Animation moveS = Animation(5,1,100);
animations.emplace("Jump", jump); animations.emplace("move-s", moveS);
Animation fall = Animation(3,1,100); //Animation fall = Animation(3,1,100);
animations.emplace("Fall",fall); //animations.emplace("Fall",fall);
Play("Idle"); Play("move-n");
} }
setTex(id); setTex(id);
} }

View File

@ -220,8 +220,8 @@ void Game::init(const char *title, int width, int height, bool fullscreen, int g
//ecs implementation //ecs implementation
// player.addComponent<TransformComponent>(860*globalScale,640*globalScale,22,42,globalScale); // player.addComponent<TransformComponent>(860*globalScale,640*globalScale,22,42,globalScale);
player.addComponent<TransformComponent>(150*gScale,100*gScale,22,42,globalScale,3); // 180,120 player.addComponent<TransformComponent>(150*gScale,100*gScale,32,32,globalScale,3); // 180,120
player.addComponent<SpriteComponent>("player", SpriteComponent::spriteAnimation, "assets/textures/actors/firefighter.json"); player.addComponent<SpriteComponent>("player", SpriteComponent::spriteAnimation, "assets/textures/actors/kaijuturtle.json");
// player.addComponent<PlayerController>(0.0,0.0,false,false,Vector2D().Zero()); // player.addComponent<PlayerController>(0.0,0.0,false,false,Vector2D().Zero());
player.addComponent<ColliderComponent>("player",16*globalScale,32*globalScale, true, 2*globalScale,10*globalScale, "collider"); player.addComponent<ColliderComponent>("player",16*globalScale,32*globalScale, true, 2*globalScale,10*globalScale, "collider");