summaryrefslogtreecommitdiff
path: root/src/screen
diff options
context:
space:
mode:
authororoborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e>2008-09-02 22:07:07 +0000
committeroroborus <oroborus@0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e>2008-09-02 22:07:07 +0000
commit7c4d8699b2e9ba64f98bd2a0290080726fa8ccfe (patch)
treebdb43761035b14a4ad1dd2d86c7e12a89963a0a0 /src/screen
parentf8204ae7059f1b49c01c72e1bc9647f366cb34b9 (diff)
- areny su ulozene v *.zip archivoch
( totalne rozmrdany zdrojovy kod -- zajtra to dokoncim ) git-svn-id: http://opensvn.csie.org/tuxanci_ng@263 0ee4d065-81f0-4d1e-b06c-ff20ad07cc3e
Diffstat (limited to 'src/screen')
-rw-r--r--src/screen/screen_choiceArena.c28
-rw-r--r--src/screen/screen_choiceArena.h3
-rw-r--r--src/screen/screen_setting.c6
-rw-r--r--src/screen/screen_world.c4
-rw-r--r--src/screen/screen_world.h3
5 files changed, 30 insertions, 14 deletions
diff --git a/src/screen/screen_choiceArena.c b/src/screen/screen_choiceArena.c
index 6d10649..ca14c0c 100644
--- a/src/screen/screen_choiceArena.c
+++ b/src/screen/screen_choiceArena.c
@@ -29,7 +29,7 @@ static widget_t *button_play;
static widget_t *button_back;
static list_t *listWidgetButtonimage;
-static int choiceArenaId;
+static arenaFile_t* currentArena;
void startScreenChoiceArena()
{
@@ -90,7 +90,7 @@ static void eventWidgetButtonImage(void *p)
if( buttonimage == this )
{
setWidgetButtonimageActive(this, TRUE);
- choiceArenaId = i;
+ currentArena = getArenaFile(i);
}
else
{
@@ -99,18 +99,23 @@ static void eventWidgetButtonImage(void *p)
}
}
-int getChoiceArenaId()
+arenaFile_t* getChoiceArenaId()
{
- return choiceArenaId;
+ return currentArena;
}
void setChoiceArenaId(int n)
{
widget_t *widget_buttonimage;
- choiceArenaId = n;
+ if( n < 0 )
+ {
+ return;
+ }
+
+ currentArena = getArenaFile(n);
- widget_buttonimage = (widget_t *)listWidgetButtonimage->list[choiceArenaId];
+ widget_buttonimage = (widget_t *)listWidgetButtonimage->list[n];
setWidgetButtonimageActive(widget_buttonimage, TRUE);
}
@@ -143,14 +148,21 @@ void initScreenChoiceArena()
button_play = newWidgetButton(_("play"), WINDOW_SIZE_X-200, WINDOW_SIZE_Y-100, eventWidget);
listWidgetButtonimage = newList();
- choiceArenaId = 0;
+ currentArena = NULL;
for( i = 0 ; i < getArenaCount() ; i++ )
{
widget_t *widget_buttonimage;
+ arenaFile_t* arenaFile;
int x, y;
- image = addImageData(getArenaImage(i), IMAGE_NO_ALPHA, "none", IMAGE_GROUP_BASE);
+ arenaFile = getArenaFile(i);
+ //image = addImageData(getArenaImage(i), IMAGE_NO_ALPHA, "none", IMAGE_GROUP_BASE);
+ image = loadImageFromArena(arenaFile,
+ getArenaImage(arenaFile),
+ IMAGE_GROUP_BASE,
+ "none",
+ IMAGE_NO_ALPHA);
x = 100 + 200 * ( i - 3 * ( i/3 ) );
y = 150 + 200 * ( i/3 );
diff --git a/src/screen/screen_choiceArena.h b/src/screen/screen_choiceArena.h
index 22989ce..1e38ee8 100644
--- a/src/screen/screen_choiceArena.h
+++ b/src/screen/screen_choiceArena.h
@@ -4,13 +4,14 @@
#define SCREEN_CHOICE_ARENA
#include "main.h"
+#include "arenaFile.h"
#define SCREENSHOT_ARENA_WIDTH 160
#define SCREENSHOT_ARENA_HEIGHT 107
extern void drawScreenChoiceArena();
extern void eventScreenChoiceArena();
-extern int getChoiceArenaId();
+extern arenaFile_t* getChoiceArenaId();
extern void setChoiceArenaId(int n);
extern void initScreenChoiceArena();
extern void quitScreenChoiceArena();
diff --git a/src/screen/screen_setting.c b/src/screen/screen_setting.c
index 452164d..229d34d 100644
--- a/src/screen/screen_setting.c
+++ b/src/screen/screen_setting.c
@@ -281,7 +281,8 @@ static void initSettingFile()
#endif
loadValueFromConfigFile(configFile, "ARENA", val, STR_SIZE, "FAGN");
- setChoiceArenaId( getArenaIdFormNetName(val) );
+ //setChoiceArenaId( getArenaIdFormNetName(val) );
+ //TODO
saveTextFile(configFile);
}
@@ -320,7 +321,8 @@ static void saveAndDestroyConfigFile()
setValueInConfigFile(configFile, "SOUND", getYesOrNo(getWidgetCheckStatus(check_sound)));
#endif
- setValueInConfigFile(configFile, "ARENA", getArenaNetName(getChoiceArenaId()));
+ //setValueInConfigFile(configFile, "ARENA", getArenaNetName(getChoiceArenaId()));
+ //TODO
saveTextFile(configFile);
destroyTextFile(configFile);
diff --git a/src/screen/screen_world.c b/src/screen/screen_world.c
index 52e92be..d6febf7 100644
--- a/src/screen/screen_world.c
+++ b/src/screen/screen_world.c
@@ -71,9 +71,9 @@ void setGameType()
}
}
-void setWorldArena(int id)
+void setWorldArena(arenaFile_t *arenaFile)
{
- arena = getArena(id);
+ arena = getArena(arenaFile);
#ifndef NO_SOUND
playMusic(arena->music, MUSIC_GROUP_USER);
diff --git a/src/screen/screen_world.h b/src/screen/screen_world.h
index a0358a7..35c02ba 100644
--- a/src/screen/screen_world.h
+++ b/src/screen/screen_world.h
@@ -6,6 +6,7 @@
#include "main.h"
#include "myTimer.h"
#include "tux.h"
+#include "arenaFile.h"
#include "arena.h"
#define TIMER_END_ARENA 5000
@@ -14,7 +15,7 @@
extern bool_t isScreenWorldInicialized();
extern void initWorld();
-extern void setWorldArena(int id);
+extern void setWorldArena(arenaFile_t *arenaFile);
extern void setWorldEnd();
extern void countRoundInc();
extern tux_t* getControlTux(int control_type);