Files
skevity/source/game_source/entities/Centery.c

142 lines
3.5 KiB
C

#include "Centery.h"
#include <stdlib.h>
#include <stdio.h>
int CenteryInit(void* self) {
entity* ent = self;
centery* cen = ent->data;
cen->direction = 0;
return 0;
}
int CenteryUpdate(int arg, void* self) {
entity* e = self;
world* w = e->world;
centery* cen = e->data;
vec2 moveTo = {0,0};
int goodMove;
//do{
// goodMove = EntityMove(e,(vec2){e->position.x+ 0, e-> position.y + 1});
// if(goodMove == 1) {
// switch (cen->direction) {
// case 0:
// moveTo = (vec2){e->position.x+ 0, e-> position.y + 1};
// printf("moveing S\n");
// break;
// case 1:
// moveTo = (vec2){e->position.x+ 1, e-> position.y + 1};
// printf("moveing SE\n");
// break;
// case 2:
// moveTo = (vec2){e->position.x+ 1, e-> position.y + 0};
// printf("moveing E\n");
// break;
// case 3:
// moveTo = (vec2){e->position.x+ 1, e-> position.y + -1};
// printf("moveing NE\n");
// break;
// case 4:
// moveTo = (vec2){e->position.x+ 0, e-> position.y + -1};
// printf("moveing N\n");
// break;
// case 6:
// moveTo = (vec2){e->position.x+ -1, e->position.y+ -1};
// printf("moveing NW\n");
// break;
// case 7:
// moveTo = (vec2){e->position.x+ -1, e->position.y + 0};
// printf("moveing W\n");
// break;
// case 8:
// moveTo = (vec2){e->position.x+ -1, e->position.y + 1};
// printf("moveing SW\n");
// break;
// }
// goodMove = EntityMove(e,moveTo);
// if(cen->direction > 8) {
// cen->direction = 0;
// }else {
// cen->direction ++;
// }
//
// }
//}while(goodMove == 1);
printf("name of entity %s\n",e->name);
return 0;
}
int CenteryFree(void* self) {
entity* ent = self;
centery* cen = ent->data;
free(cen);
free(ent);
return 0;
}
entity* CreateCentery(int tear, int classification, world* w) {
entity* ent = (entity*)malloc(sizeof(entity));
centery* cen = (centery*)malloc(sizeof(centery));
*cen = (centery){
.weapon = 1,
.classification = 1,
.tear = 3,
.alert = 0,
.mode = 0,
.health = 30,
.ac = 3,
.str = 3,
.wis = 3,
.dex = 3,
};
*ent = (entity){
.id = CENTERY_ID,
.name = "Centery",
.description = "Your Basic Bad giy",
.tile = {
.simble = 'C',
.background = {0,0,0},
.forground = {0x3f,0x5f,0x10},
},
.position = (vec2){5,5},
.data = cen,
.world = w,
.callback = {
.init = CenteryInit,
.update = CenteryUpdate,
.free = CenteryFree,
},
.cleanup = 0,
};
return ent;
}
int ServerUpdate(void * ent) {
//entity* e = (entity*)ent;
//centery* cen = (centery*)e->userdata;
return 0;
}
int ClientUpdate(int action, void * centery) {
return 0;
}
int Init(void * ent){
return 0;
}
int Free(void* ent) {
return 0;
}