From 776577985a056407645a448f8332d6ce69d645a3 Mon Sep 17 00:00:00 2001 From: oroborus Date: Mon, 7 Jul 2008 20:49:54 +0000 Subject: - opravy v kodu, ktory obsluhuje konfig - oprava v screen_setting - oprava v layer git-svn-id: http://opensvn.csie.org/tuxanci_ng@123 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e --- src/client/configFile.c | 13 +++++++------ src/client/layer.c | 44 ++++++++++++++++++++------------------------ 2 files changed, 27 insertions(+), 30 deletions(-) (limited to 'src/client') diff --git a/src/client/configFile.c b/src/client/configFile.c index 1c19e3f..f900910 100644 --- a/src/client/configFile.c +++ b/src/client/configFile.c @@ -26,8 +26,7 @@ int getValue(char *line, char *env, char *val, int len) char clone_env[STR_SIZE]; int val_len; - strcpy(clone_env, " "); - strcat(clone_env, env); + strcpy(clone_env, env); offset_env = strstr(line, clone_env); if( offset_env == NULL )return -1; @@ -83,8 +82,10 @@ int getValueInConfigFile(textFile_t *textFile, char *env, char *val, int len) for( i = 0 ; i < textFile->text->count ; i++ ) { line = (char *) (textFile->text->list[i]); - - if( strstr(line, env) != NULL ) + + //printf("env = %s line = %s\n", env, line); + + if( strncmp(line, env, strlen(env)) == 0 ) { return getValue(line, env, val, len); } @@ -103,7 +104,7 @@ int setValueInConfigFile(textFile_t *textFile, char *env, char *val) { line = (char *) (textFile->text->list[i]); - if( strstr(line, env) != NULL ) + if( strncmp(line, env, strlen(env)) == 0 ) { ret = setValue(line, env, val); @@ -128,7 +129,7 @@ void loadValueFromConfigFile(textFile_t *textFile, char *env, char *val, int len { char line[STR_SIZE]; - sprintf(line, " %s=\"%s\"", env, butVal); + sprintf(line, "%s=\"%s\"", env, butVal); addList(textFile->text, strdup(line) ); printf("Add line \"%s\" in config file.\n", line); diff --git a/src/client/layer.c b/src/client/layer.c index d4fcb7b..9354aae 100755 --- a/src/client/layer.c +++ b/src/client/layer.c @@ -26,7 +26,9 @@ bool_t isLayerInicialized() */ void initLayer() { + printf("*******************\nnew layer\n**********************\n"); listLayer = newList(); + isLayerInit = TRUE; } /* @@ -42,7 +44,7 @@ void addLayer(SDL_Surface *img, { layer_t *new; layer_t *this; - int i; + int i, j; assert( img != NULL ); @@ -56,32 +58,26 @@ void addLayer(SDL_Surface *img, new->layer = player; new->image = img; - if( listLayer->count == 0 ) - { - addList(listLayer, new); - return; - } - - i = 0; - this = (layer_t *)listLayer->list[0]; - - //vyhladaj svoju vrstvu - while( i < listLayer->count && this->layer < new->layer ) - { - this = (layer_t *)listLayer->list[++i]; - } - - //porovnaj s vyskami na tvojej vrstve, - //ak neexistuje, rovno to tam hod - this = (layer_t *)listLayer->list[i]; - - while( i < listLayer->count && this->y+this->h < new->y+new->h && new->layer == this->layer ) + for( i = 0 ; i < listLayer->count ; i++ ) { - this = (layer_t *)listLayer->list[++i]; + this = (layer_t *)listLayer->list[i]; + + if( this->layer == new->layer ) + { + for( j = i ; j < listLayer->count ; j++ ) + { + this = (layer_t *)listLayer->list[j]; + + if( this->y+this->h > new->y+new->h ) + { + insList(listLayer, j, new); + return; + } + } + } } - insList(listLayer, i, new); - isLayerInit = TRUE; + addList(listLayer, new); } /* -- cgit v1.2.3