diff options
Diffstat (limited to 'src/client/radar.c~')
| -rw-r--r-- | src/client/radar.c~ | 121 |
1 files changed, 0 insertions, 121 deletions
diff --git a/src/client/radar.c~ b/src/client/radar.c~ deleted file mode 100644 index afa48d4..0000000 --- a/src/client/radar.c~ +++ /dev/null @@ -1,121 +0,0 @@ - -#include <stdio.h> -#include <stdlib.h> -#include <assert.h> - -#include "main.h" -#include "list.h" -#include "tux.h" -#include "arena.h" - -#include "interface.h" -#include "image.h" -#include "radar.h" - -static image_t *g_radar; -static list_t *listRadar; - -typedef struct radar_item_struct -{ - int id; - int x, y; - int type; -} radar_item_t; - -static radar_item_t* newRadarItem(int id, int x, int y, int type) -{ - radar_item_t *new; - - new = malloc( sizeof(radar_item_t) ); - new->id = id; - new->x = x; - new->y = y; - new->type = type; - - return new; -} - -static void destroyRadarItem(radar_item_t *p) -{ - assert( p != NULL ); - free(p); -} - -void addToRadar(int id, int x, int y, int type) -{ - int i; - - for( i = 0 ; i < listRadar->count ; i++ ) - { - radar_item_t *thisRadarItem; - - thisRadarItem = (radar_item_t *)listRadar->list[i]; - - if( thisRadarItem->id == id ) - { - thisRadarItem->x = x; - thisRadarItem->y = y; - thisRadarItem->type = type; - return; - } - } - - addList(listRadar, newRadarItem(id, x, y, type) ); -} - -void delFromRadar(int id) -{ - int i; - - for( i = 0 ; i < listRadar->count ; i++ ) - { - radar_item_t *thisRadarItem; - - thisRadarItem = (radar_item_t *)listRadar->list[i]; - - if( thisRadarItem->id == id ) - { - delListItem(listRadar, i, destroyRadarItem); - return; - } - } -} - -void initRadar() -{ - assert( isImageInicialized() == TRUE ); - assert( isInterfaceInicialized() == TRUE ); - - g_radar = addImageData("radar.png", IMAGE_NO_ALPHA, "radar", IMAGE_GROUP_USER); - listRadar = newList(); -} - -void drawRadar(arena_t *arena) -{ - int i; - - drawImage(g_radar, RADAR_LOCATION_X, RADAR_LOCATION_Y, 0, 0, RADAR_SIZE_X+2, RADAR_SIZE_Y+2); - - for( i = 0 ; i < listRadar->count ; i++ ) - { - radar_item_t *thisRadarItem; - int x, y; - - thisRadarItem = (radar_item_t *)listRadar->list[i]; - - x = ( ( (float)RADAR_SIZE_X) / ( (float)arena->w ) ) * ( (float)thisRadarItem->x ); - y = ( ( (float)RADAR_SIZE_Y) / ( (float)arena->h ) ) * ( (float)thisRadarItem->y ); - - if( x >= 0 && x <= RADAR_SIZE_X && y >= 0 && y <= RADAR_SIZE_Y ) - { - drawImage(g_radar, - RADAR_LOCATION_X+1+x, RADAR_LOCATION_Y+1+y, - 2*thisRadarItem->type, RADAR_SIZE_Y+2, 2, 2); - } - } -} - -void quitRadar() -{ - destroyListItem(listRadar, destroyRadarItem); -} |