Can't focus right now
This commit is contained in:
@@ -1,3 +1,5 @@
|
|||||||
var screenWidth = 1280;
|
var screenWidth = 1280;
|
||||||
var screenHeight = 720;
|
var screenHeight = 720;
|
||||||
var screenCaption = "Hello raylib from Toy!";
|
var screenCaption = "Hello raylib from Toy!";
|
||||||
|
|
||||||
|
//TODO: load monsters on a timer?
|
||||||
+19
-23
@@ -63,26 +63,23 @@ unsigned char* makeCodeFromSource(const char* source) {
|
|||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
//sprites seen on the screen
|
//player data
|
||||||
typedef struct Entity {
|
typedef struct PlayerData {
|
||||||
Texture2D texture;
|
Texture2D texture;
|
||||||
Rectangle rect;
|
Rectangle rect;
|
||||||
Vector2 position;
|
Vector2 position;
|
||||||
} Entity;
|
//TODO: hitbox, hurtbox, motion, etc.
|
||||||
|
} PlayerData;
|
||||||
|
|
||||||
Entity loadEntity(const char* fileName, Rectangle rect) {
|
PlayerData loadPlayerData(const char* fileName, Rectangle rect) {
|
||||||
Entity entity = {0};
|
PlayerData player = {0};
|
||||||
entity.texture = LoadTexture(fileName);
|
player.texture = LoadTexture(fileName);
|
||||||
entity.rect = rect;
|
player.rect = rect;
|
||||||
return entity;
|
return player;
|
||||||
}
|
}
|
||||||
|
|
||||||
void unloadEntity(Entity entity) {
|
void unloadPlayerData(PlayerData player) {
|
||||||
UnloadTexture(entity.texture);
|
UnloadTexture(player.texture);
|
||||||
}
|
|
||||||
|
|
||||||
void drawEntity(Entity entity) {
|
|
||||||
DrawTextureRec(entity.texture, entity.rect, entity.position, WHITE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//main file
|
//main file
|
||||||
@@ -118,28 +115,27 @@ int main() {
|
|||||||
SetTargetFPS(60);
|
SetTargetFPS(60);
|
||||||
|
|
||||||
//load a sprite
|
//load a sprite
|
||||||
Entity entity = loadEntity("assets/parvati.png", (Rectangle){0,0,32,32});
|
PlayerData player = loadPlayerData("assets/parvati.png", (Rectangle){0,0,32,32});
|
||||||
|
|
||||||
while (!WindowShouldClose()) {
|
while (!WindowShouldClose()) {
|
||||||
//input
|
//input
|
||||||
if (IsKeyDown(KEY_UP)) entity.position.y -= 5.0f;
|
if (IsKeyDown(KEY_UP)) player.position.y -= 5.0f;
|
||||||
if (IsKeyDown(KEY_DOWN)) entity.position.y += 5.0f;
|
if (IsKeyDown(KEY_DOWN)) player.position.y += 5.0f;
|
||||||
if (IsKeyDown(KEY_LEFT)) entity.position.x -= 5.0f;
|
if (IsKeyDown(KEY_LEFT)) player.position.x -= 5.0f;
|
||||||
if (IsKeyDown(KEY_RIGHT)) entity.position.x += 5.0f;
|
if (IsKeyDown(KEY_RIGHT)) player.position.x += 5.0f;
|
||||||
|
|
||||||
//drawing
|
//drawing
|
||||||
BeginDrawing();
|
BeginDrawing();
|
||||||
ClearBackground(RAYWHITE);
|
ClearBackground(RAYWHITE);
|
||||||
|
|
||||||
drawEntity(entity);
|
//draw the player
|
||||||
|
DrawTextureRec(player.texture, player.rect, player.position, WHITE);
|
||||||
|
|
||||||
DrawFPS(0,0);
|
DrawFPS(0,0);
|
||||||
// DrawText("Do you have games on your phone?", 100, 100, 20, LIGHTGRAY);
|
|
||||||
EndDrawing();
|
EndDrawing();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
unloadEntity(entity);
|
unloadPlayerData(player);
|
||||||
|
|
||||||
CloseWindow();
|
CloseWindow();
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
#include "monster.h"
|
||||||
|
|
||||||
|
//TODO: load monsters as an object pool
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "raylib.h"
|
||||||
|
|
||||||
|
//sprites loaded from disk
|
||||||
|
typedef struct MonsterSprite {
|
||||||
|
Texture2D texture;
|
||||||
|
Rectangle rect;
|
||||||
|
} MonsterSprite;
|
||||||
|
|
||||||
|
//Monsters loaded from scripts
|
||||||
|
typedef struct MonsterData {
|
||||||
|
MonsterSprite* sprite;
|
||||||
|
Vector2 position;
|
||||||
|
int health;
|
||||||
|
} MonsterData;
|
||||||
|
|
||||||
Reference in New Issue
Block a user