Vel instead of px

This commit is contained in:
2025-06-18 22:17:02 -05:00
parent 3f22665e21
commit 04158a1ad2
3 changed files with 27 additions and 17 deletions

View File

@ -1,5 +1,5 @@
{
"activeFile": "overworld.tsx",
"activeFile": "map.tmj",
"expandedProjectPaths": [
"templates",
"."
@ -14,10 +14,10 @@
},
"map.tmj": {
"scale": 3,
"selectedLayer": 1,
"selectedLayer": 2,
"viewCenter": {
"x": 6909.5,
"y": 6948.166666666666
"x": 6665.833333333333,
"y": 6764.5
}
},
"overworld.tsx": {
@ -34,8 +34,8 @@
],
"project": "map project.tiled-project",
"recentFiles": [
"map.tmj",
"overworld.tsx",
"map.tmj",
"entities.tsx"
],
"tileset.lastUsedFilter": "Tiled tileset files (*.tsx *.xml)",

View File

@ -42,4 +42,7 @@ void entityUpdate(entity_t *entity) {
);
ENTITY_CALLBACKS[entity->type].update(entity);
entity->x += entity->vx;
entity->y += entity->vy;
}

View File

@ -32,47 +32,54 @@ void playerNPCUpdate(entity_t *entity) {
if(inputIsDown(INPUT_BIND_UP)) {
if(inputIsDown(INPUT_BIND_LEFT)) {
fx248Subfx248(&entity->x, PLAYER_MOVE_SPEED_XY);
fx248Subfx248(&entity->y, PLAYER_MOVE_SPEED_XY);
entity->vx = -PLAYER_MOVE_SPEED_XY;
entity->vy = -PLAYER_MOVE_SPEED_XY;
if(entity->dir != ENTITY_DIR_NORTH && entity->dir != ENTITY_DIR_WEST) {
entity->dir = ENTITY_DIR_NORTH;
}
} else if(inputIsDown(INPUT_BIND_RIGHT)) {
fx248Addfx248(&entity->x, PLAYER_MOVE_SPEED_XY);
fx248Subfx248(&entity->y, PLAYER_MOVE_SPEED_XY);
entity->vx = PLAYER_MOVE_SPEED_XY;
entity->vy = -PLAYER_MOVE_SPEED_XY;
if(entity->dir != ENTITY_DIR_NORTH && entity->dir != ENTITY_DIR_EAST) {
entity->dir = ENTITY_DIR_NORTH;
}
} else {
fx248Subfx248(&entity->y, PLAYER_MOVE_SPEED);
entity->vy = -PLAYER_MOVE_SPEED;
entity->vx = 0;
entity->dir = ENTITY_DIR_NORTH;
}
} else if(inputIsDown(INPUT_BIND_DOWN)) {
if(inputIsDown(INPUT_BIND_LEFT)) {
fx248Subfx248(&entity->x, PLAYER_MOVE_SPEED_XY);
fx248Addfx248(&entity->y, PLAYER_MOVE_SPEED_XY);
entity->vx = -PLAYER_MOVE_SPEED_XY;
entity->vy = PLAYER_MOVE_SPEED_XY;
if(entity->dir != ENTITY_DIR_SOUTH && entity->dir != ENTITY_DIR_WEST) {
entity->dir = ENTITY_DIR_SOUTH;
}
} else if(inputIsDown(INPUT_BIND_RIGHT)) {
fx248Addfx248(&entity->x, PLAYER_MOVE_SPEED_XY);
fx248Addfx248(&entity->y, PLAYER_MOVE_SPEED_XY);
entity->vx = PLAYER_MOVE_SPEED_XY;
entity->vy = PLAYER_MOVE_SPEED_XY;
if(entity->dir != ENTITY_DIR_SOUTH && entity->dir != ENTITY_DIR_EAST) {
entity->dir = ENTITY_DIR_SOUTH;
}
} else {
fx248Addfx248(&entity->y, PLAYER_MOVE_SPEED);
entity->vy = PLAYER_MOVE_SPEED;
entity->vx = 0;
entity->dir = ENTITY_DIR_SOUTH;
}
} else if(inputIsDown(INPUT_BIND_LEFT)) {
fx248Subfx248(&entity->x, PLAYER_MOVE_SPEED);
entity->vx = -PLAYER_MOVE_SPEED;
entity->vy = 0;
entity->dir = ENTITY_DIR_WEST;
} else if(inputIsDown(INPUT_BIND_RIGHT)) {
fx248Addfx248(&entity->x, PLAYER_MOVE_SPEED);
entity->vx = PLAYER_MOVE_SPEED;
entity->vy = 0;
entity->dir = ENTITY_DIR_EAST;
} else {
entity->vx = 0;
entity->vy = 0;
}
}