The Mystery of the git Commit

master
kts 2014-03-14 14:51:41 -07:00
parent b0c5bea071
commit fa7a158ec9
10 changed files with 48 additions and 19 deletions

1
.gitignore vendored 100644
View File

@ -0,0 +1 @@
.*.swp

View File

@ -1,4 +1,5 @@
#include "map.h"
#include "tile.h"
#include <string.h>
#include <stdlib.h>
@ -124,11 +125,7 @@ int moveTile(struct Map *map, struct Tile *tile, float x, float y, float z) {
//return 2;
} else {
removeTile(tile); // remove from current position
struct Tile *target_tile = map->tiles[tile_x][tile_y][tile_z];
while (target_tile->next != NULL) {
target_tile = target_tile->next;
}
addTile(target_tile, tile);
appendTile(map->tiles[tile_x][tile_y][tile_z], tile);
}
}
tile->x = target_x;

View File

@ -22,7 +22,13 @@ void initTestState() {
int x,y,z;
for (x=0;x < test_map->width;x++) {
for (y=0;y < test_map->height;y++) {
test_map->tiles[x][y][0] = newTile(x, y, 0, getTileDataById(g_tile_data, 1, 0));
test_map->tiles[x][y][0] = newTile(x, y, 0, getTileDataById(g_tile_data, 2, 0));
}
}
for (x=8;x < 9;x++) {
for (y=0;y < test_map->height;y++) {
test_map->tiles[x][y][1] = newTile(x, y, 1, getTileDataById(g_tile_data, 3, 0));
}
}
@ -66,23 +72,23 @@ void processTestState(int delta) {
while(s_accumulator >= g_tick_time.n) {
if (key_press[0] == 1) {
test_player_tile->set = 4;
moveTile(test_map, test_player_tile, -0.2f, 0.0f, 0.0f);
//moveTile(test_map, test_player_tile, -1.0f, 0.0f);
moveTile(test_map, test_player_tile, -0.1f, 0.0f, 0.0f);
//moveTile(test_map, test_player_tile, -1.0f, 0.0f, 0.0f);
}
if (key_press[1] == 1) {
test_player_tile->set = 5;
moveTile(test_map, test_player_tile, 0.0f, 0.2f, 0.0f);
//moveTile(test_map, test_player_tile, 0.0f, 1.0f);
moveTile(test_map, test_player_tile, 0.0f, 0.1f, 0.0f);
//moveTile(test_map, test_player_tile, 0.0f, 1.0f, 0.0f);
}
if (key_press[2] == 1) {
test_player_tile->set = 6;
moveTile(test_map, test_player_tile, 0.2f, 0.0f, 0.0f);
//moveTile(test_map, test_player_tile, 1.0f, 0.0f);
moveTile(test_map, test_player_tile, 0.1f, 0.0f, 0.0f);
//moveTile(test_map, test_player_tile, 1.0f, 0.0f, 0.0f);
}
if (key_press[3] == 1) {
test_player_tile->set = 7;
moveTile(test_map, test_player_tile, 0.0f, -0.2f, 0.0f);
//moveTile(test_map, test_player_tile, 0.0f, -1.0f);
moveTile(test_map, test_player_tile, 0.0f, -0.1f, 0.0f);
//moveTile(test_map, test_player_tile, 0.0f, -1.0f, 0.0f);
}
if (test_accumulator > 4) {
@ -108,12 +114,13 @@ Our render state, called a variable amount of times per second. Make render call
void renderTestState() {
int x, y, z;
for(z=0;z < test_map->depth;z++) {
for(x=0;x < test_map->width;x++) {
for(y=test_map->height-1;y >= 0;y--) {
for(y=0;y < test_map->height;y++) {
for(x=test_map->width-1;x >= 0;x--) {
struct Tile *tile = test_map->tiles[x][y][z];
while(tile != NULL) {
//printf("%f\n", tile->x);
int id = tile->data->id + (tile->set * 4) + tile->frame;
//int id = tile->data->id + (tile->set * 4) + tile->frame;
int id = tile->data->id;
int pix_x = tile->x * g_module_spritesheets[tile->data->tid]->s_width;
int pix_y = (tile->y * g_module_spritesheets[tile->data->tid]->s_height)/2;
g_renderSprite(g_module_spritesheets[tile->data->tid], g_screen, id, pix_x, pix_y);

View File

@ -23,7 +23,18 @@ void freeTile(struct Tile *tile) {
free(tile);
}
void addTile(struct Tile* tile_target, struct Tile* new_tile) {
void appendTile(struct Tile *tile_target, struct Tile *new_tile) {
if (new_tile == tile_target)
return;
struct Tile *current_tile = tile_target;
while (current_tile->next != NULL) {
current_tile = current_tile->next;
}
current_tile->next = new_tile;
new_tile->prev = current_tile;
}
void insertTile(struct Tile* tile_target, struct Tile* new_tile) {
if (new_tile == tile_target)
return;
if (tile_target->next) {

View File

@ -16,7 +16,8 @@ struct Tile {
struct Tile *newTile(float x, float y, float z, struct TileData *data);
void freeTile(struct Tile *tile);
void addTile(struct Tile* tile_target, struct Tile* new_tile);
void appendTile(struct Tile *tile_target, struct Tile *new_tile);
void insertTile(struct Tile* tile_target, struct Tile* new_tile);
void removeTile(struct Tile* tile);
#endif

View File

@ -13,6 +13,7 @@ sprites {
; key = TID, value = spritesheet for that TID
0 players
1 ground
2 walls
}
; list of playable characters for character creation
chars {

View File

@ -15,3 +15,11 @@ ground {
set 1
frame 1
}
walls {
width 8
height 16
columns 1
set 1
frame 1
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 B

After

Width:  |  Height:  |  Size: 188 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 B

View File

@ -9,6 +9,9 @@
}
}
2 {
0 {
name greh brix
}
}
3 {
}