modified file format for schemes files (which is going to introduce a lot of pre-release bugs, i'm sure)
authorkoda
Sat, 28 Aug 2010 05:03:26 +0200
changeset 3781 2bfda544ae48
parent 3780 7c704e69242e
child 3782 dc3531e49e4c
modified file format for schemes files (which is going to introduce a lot of pre-release bugs, i'm sure)
project_files/HedgewarsMobile/Classes/CommodityFunctions.m
project_files/HedgewarsMobile/Classes/GameSetup.m
project_files/HedgewarsMobile/Classes/SchemeWeaponConfigViewController.m
project_files/HedgewarsMobile/Classes/SingleSchemeViewController.h
project_files/HedgewarsMobile/Classes/SingleSchemeViewController.m
project_files/HedgewarsMobile/Hedgewars.xcodeproj/project.pbxproj
project_files/HedgewarsMobile/Resources/Frontend-iPad/bluebox-squeezed.png
project_files/HedgewarsMobile/Resources/MainMenuViewController-iPhone.xib
project_files/HedgewarsMobile/Resources/MapConfigViewController-iPad.xib
project_files/HedgewarsMobile/Resources/Settings/Schemes/Barrel Mayhem.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Basketball.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Default.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Minefield.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Pro Mode.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Shoppa.plist
project_files/HedgewarsMobile/Resources/Settings/Schemes/Tunnel Hogs.plist
--- a/project_files/HedgewarsMobile/Classes/CommodityFunctions.m	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Classes/CommodityFunctions.m	Sat Aug 28 05:03:26 2010 +0200
@@ -126,38 +126,49 @@
                                                    attributes:nil
                                                         error:NULL];
     }
-
-    NSArray *theScheme = [[NSArray alloc] initWithObjects:
-                          [NSNumber numberWithBool:NO],    //fortmode
-                          [NSNumber numberWithBool:NO],    //divideteam
-                          [NSNumber numberWithBool:NO],    //solidland
-                          [NSNumber numberWithBool:NO],    //addborder
-                          [NSNumber numberWithBool:NO],    //lowgravity
-                          [NSNumber numberWithBool:NO],    //lasersight
-                          [NSNumber numberWithBool:NO],    //invulnerable
-                          [NSNumber numberWithBool:YES],   //addmines
-                          [NSNumber numberWithBool:NO],    //vampirism
-                          [NSNumber numberWithBool:NO],    //karma
-                          [NSNumber numberWithBool:NO],    //artillery
-                          [NSNumber numberWithBool:YES],   //randomorder
-                          [NSNumber numberWithBool:NO],    //king
-                          [NSNumber numberWithBool:NO],    //placehedgehogs
-                          [NSNumber numberWithBool:NO],    //clansharesammo
-                          [NSNumber numberWithBool:NO],    //disablegirders
-                          [NSNumber numberWithBool:NO],    //disablelandobjects
-                          [NSNumber numberWithInt:100],    //damagemodifier
-                          [NSNumber numberWithInt:45],     //turntime
-                          [NSNumber numberWithInt:100],    //initialhealth
-                          [NSNumber numberWithInt:15],     //suddendeathtimeout
-                          [NSNumber numberWithInt:5],      //cratedrops
-                          [NSNumber numberWithInt:3],      //minestime
-                          [NSNumber numberWithInt:4],      //mines
-                          [NSNumber numberWithInt:0],      //dudmines
-                          [NSNumber numberWithInt:2],      //explosives
-                          nil];
-
+    
+    NSMutableArray *basicArray  = [[NSMutableArray alloc] initWithObjects:
+                                   [NSNumber numberWithInt:100],      //damagemodifier
+                                   [NSNumber numberWithInt:45],       //turntime
+                                   [NSNumber numberWithInt:100],      //initialhealth
+                                   [NSNumber numberWithInt:15],       //suddendeathtimeout
+                                   [NSNumber numberWithInt:5],        //cratedrops
+                                   [NSNumber numberWithInt:3],        //minestime
+                                   [NSNumber numberWithInt:4],        //mines
+                                   [NSNumber numberWithInt:0],        //dudmines
+                                   [NSNumber numberWithInt:2],        //explosives
+                                   nil];
+    
+    NSMutableArray *gamemodArray= [[NSMutableArray alloc] initWithObjects:
+                                   [NSNumber numberWithBool:NO],      //fortmode
+                                   [NSNumber numberWithBool:NO],      //divideteam
+                                   [NSNumber numberWithBool:NO],      //solidland
+                                   [NSNumber numberWithBool:NO],      //addborder
+                                   [NSNumber numberWithBool:NO],      //lowgravity
+                                   [NSNumber numberWithBool:NO],      //lasersight
+                                   [NSNumber numberWithBool:NO],      //invulnerable
+                                   [NSNumber numberWithBool:YES],     //addmines
+                                   [NSNumber numberWithBool:NO],      //vampirism
+                                   [NSNumber numberWithBool:NO],      //karma
+                                   [NSNumber numberWithBool:NO],      //artillery
+                                   [NSNumber numberWithBool:YES],     //randomorder
+                                   [NSNumber numberWithBool:NO],      //king
+                                   [NSNumber numberWithBool:NO],      //placehedgehogs
+                                   [NSNumber numberWithBool:NO],      //clansharesammo
+                                   [NSNumber numberWithBool:NO],      //disablegirders
+                                   [NSNumber numberWithBool:NO],      //disablelandobjects
+                                   [NSNumber numberWithBool:NO],      //aisurvival
+                                   nil];
+    
+    NSMutableDictionary *theScheme = [[NSMutableDictionary alloc] initWithObjectsAndKeys:
+                                      basicArray,@"basic",
+                                      gamemodArray,@"gamemod",
+                                      nil];
+    [gamemodArray release];
+    [basicArray release];
+    
     NSString *schemeFile = [[NSString alloc] initWithFormat:@"%@/%@.plist", schemesDirectory, nameWithoutExt];
-
+    
     [theScheme writeToFile:schemeFile atomically:YES];
     [schemeFile release];
     [theScheme release];
--- a/project_files/HedgewarsMobile/Classes/GameSetup.m	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Classes/GameSetup.m	Sat Aug 28 05:03:26 2010 +0200
@@ -130,88 +130,90 @@
 // unpacks scheme data from the selected scheme.plist to a sequence of engine commands
 -(NSInteger) provideScheme:(NSString *)schemeName {
     NSString *schemePath = [[NSString alloc] initWithFormat:@"%@/%@",SCHEMES_DIRECTORY(),schemeName];
-    NSArray *scheme = [[NSArray alloc] initWithContentsOfFile:schemePath];
+    NSDictionary *schemeDictionary = [[NSDictionary alloc] initWithContentsOfFile:schemePath];
     [schemePath release];
+    NSArray *basicArray = [schemeDictionary objectForKey:@"basic"];
+    NSArray *gamemodArray = [schemeDictionary objectForKey:@"gamemod"];
     int result = 0;
     int i = 0;
 
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000001;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000010;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000004;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000008;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000020;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000040;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000080;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000100;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000200;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000400;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00000800;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00002000;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00004000;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00008000;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00010000;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00020000;
-    if ([[scheme objectAtIndex:i++] boolValue])
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
         result |= 0x00080000;
-    if ([[scheme objectAtIndex:i++] boolValue])
-        result |= 0x00100000;
+    if ([[gamemodArray objectAtIndex:i++] boolValue])
+        result |= 0x00100000;  
 
     NSString *flags = [[NSString alloc] initWithFormat:@"e$gmflags %d",result];
     [self sendToEngine:flags];
     [flags release];
 
-    NSString *dmgMod = [[NSString alloc] initWithFormat:@"e$damagepct %d",[[scheme objectAtIndex:i++] intValue]];
+    i = 0;
+    NSString *dmgMod = [[NSString alloc] initWithFormat:@"e$damagepct %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:dmgMod];
     [dmgMod release];
 
-    NSString *turnTime = [[NSString alloc] initWithFormat:@"e$turntime %d",[[scheme objectAtIndex:i++] intValue] * 1000];
+    NSString *turnTime = [[NSString alloc] initWithFormat:@"e$turntime %d",[[basicArray objectAtIndex:i++] intValue] * 1000];
     [self sendToEngine:turnTime];
     [turnTime release];
 
-    result = [[scheme objectAtIndex:i++] intValue]; // initial health
+    result = [[basicArray objectAtIndex:i++] intValue]; // initial health
 
-    NSString *sdTime = [[NSString alloc] initWithFormat:@"e$sd_turns %d",[[scheme objectAtIndex:i++] intValue]];
+    NSString *sdTime = [[NSString alloc] initWithFormat:@"e$sd_turns %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:sdTime];
     [sdTime release];
 
-    NSString *crateDrops = [[NSString alloc] initWithFormat:@"e$casefreq %d",[[scheme objectAtIndex:i++] intValue]];
+    NSString *crateDrops = [[NSString alloc] initWithFormat:@"e$casefreq %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:crateDrops];
     [crateDrops release];
 
-    NSString *minesTime = [[NSString alloc] initWithFormat:@"e$minestime %d",[[scheme objectAtIndex:i++] intValue] * 1000];
+    NSString *minesTime = [[NSString alloc] initWithFormat:@"e$minestime %d",[[basicArray objectAtIndex:i++] intValue] * 1000];
     [self sendToEngine:minesTime];
     [minesTime release];
 
-    NSString *minesNumber = [[NSString alloc] initWithFormat:@"e$landadds %d",[[scheme objectAtIndex:i++] intValue]];
+    NSString *minesNumber = [[NSString alloc] initWithFormat:@"e$landadds %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:minesNumber];
     [minesNumber release];
 
-    
-    NSString *dudMines = [[NSString alloc] initWithFormat:@"e$minedudpct %d",[[scheme objectAtIndex:i++] intValue]];
+    NSString *dudMines = [[NSString alloc] initWithFormat:@"e$minedudpct %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:dudMines];
     [dudMines release];
 
-    NSString *explosives = [[NSString alloc] initWithFormat:@"e$explosives %d",[[scheme objectAtIndex:i++] intValue]];
+    NSString *explosives = [[NSString alloc] initWithFormat:@"e$explosives %d",[[basicArray objectAtIndex:i++] intValue]];
     [self sendToEngine:explosives];
     [explosives release];
 
-    [scheme release];
+    [schemeDictionary release];
     return result;
 }
 
--- a/project_files/HedgewarsMobile/Classes/SchemeWeaponConfigViewController.m	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Classes/SchemeWeaponConfigViewController.m	Sat Aug 28 05:03:26 2010 +0200
@@ -74,13 +74,13 @@
     NSInteger row = [indexPath row];
 
     UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
-    if (cell == nil) {
-        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
-    }
+    if (cell == nil)
+        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
 
     cell.accessoryView = nil;
     if ([indexPath section] == 0) {
         cell.textLabel.text = [[self.listOfSchemes objectAtIndex:row] stringByDeletingPathExtension];
+        cell.detailTextLabel.text = [[self.listOfSchemes objectAtIndex:row] stringByDeletingPathExtension];
         if ([[self.listOfSchemes objectAtIndex:row] isEqualToString:self.selectedScheme]) {
             UIImageView *checkbox = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:@"checkbox.png"]];
             cell.accessoryView = checkbox;
@@ -89,6 +89,7 @@
         }
     } else {
         cell.textLabel.text = [[self.listOfWeapons objectAtIndex:row] stringByDeletingPathExtension];
+        cell.detailTextLabel.text = [[self.listOfWeapons objectAtIndex:row] stringByDeletingPathExtension];
         if ([[self.listOfWeapons objectAtIndex:row] isEqualToString:self.selectedWeapon]) {
             UIImageView *checkbox = [[UIImageView alloc] initWithImage:[UIImage imageWithContentsOfFile:@"checkbox.png"]];
             cell.accessoryView = checkbox;
@@ -99,6 +100,7 @@
     
     cell.backgroundColor = [UIColor blackColor];
     cell.textLabel.textColor = UICOLOR_HW_YELLOW_TEXT;
+    cell.detailTextLabel.textColor = [UIColor whiteColor];
     return cell;
 }
 
--- a/project_files/HedgewarsMobile/Classes/SingleSchemeViewController.h	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Classes/SingleSchemeViewController.h	Sat Aug 28 05:03:26 2010 +0200
@@ -11,13 +11,13 @@
 
 @interface SingleSchemeViewController : UITableViewController <EditableCellViewDelegate> {
     NSString *schemeName;
-    NSMutableArray *schemeArray;
+    NSMutableDictionary *schemeDictionary;
     NSArray *basicSettingList;
     NSArray *gameModifierArray;
 }
 
 @property (nonatomic, retain) NSString *schemeName;
-@property (nonatomic, retain) NSMutableArray *schemeArray;
+@property (nonatomic, retain) NSMutableDictionary *schemeDictionary;
 @property (nonatomic, retain) NSArray *basicSettingList;
 @property (nonatomic, retain) NSArray *gameModifierArray;
 
--- a/project_files/HedgewarsMobile/Classes/SingleSchemeViewController.m	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Classes/SingleSchemeViewController.m	Sat Aug 28 05:03:26 2010 +0200
@@ -13,9 +13,10 @@
 
 #define LABEL_TAG  12345
 #define SLIDER_TAG 54321
+#define SWITCH_TAG 67890
 
 @implementation SingleSchemeViewController
-@synthesize schemeName, schemeArray, basicSettingList, gameModifierArray;
+@synthesize schemeName, schemeDictionary, basicSettingList, gameModifierArray;
 
 -(BOOL) shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation) interfaceOrientation {
     return rotationManager(interfaceOrientation);
@@ -118,9 +119,9 @@
     [super viewWillAppear:animated];
 
     NSString *schemeFile = [[NSString alloc] initWithFormat:@"%@/%@.plist",SCHEMES_DIRECTORY(),self.schemeName];
-    NSMutableArray *scheme = [[NSMutableArray alloc] initWithContentsOfFile:schemeFile];
+    NSMutableDictionary *scheme = [[NSMutableDictionary alloc] initWithContentsOfFile:schemeFile];
     [schemeFile release];
-    self.schemeArray = scheme;
+    self.schemeDictionary = scheme;
     [scheme release];
 
     [self.tableView reloadData];
@@ -131,7 +132,7 @@
     [super viewWillDisappear:animated];
 
     NSString *schemeFile = [[NSString alloc] initWithFormat:@"%@/%@.plist",SCHEMES_DIRECTORY(),self.schemeName];
-    [self.schemeArray writeToFile:schemeFile atomically:YES];
+    [self.schemeDictionary writeToFile:schemeFile atomically:YES];
     [schemeFile release];
 }
 
@@ -144,7 +145,7 @@
     // update filename
     self.schemeName = textString;
     // save new file
-    [self.schemeArray writeToFile:[NSString stringWithFormat:@"%@/%@.plist",SCHEMES_DIRECTORY(),self.schemeName] atomically:YES];
+    [self.schemeDictionary writeToFile:[NSString stringWithFormat:@"%@/%@.plist",SCHEMES_DIRECTORY(),self.schemeName] atomically:YES];
 }
 
 #pragma mark -
@@ -197,7 +198,6 @@
             cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier1];
             NSDictionary *detail = [self.basicSettingList objectAtIndex:row];
             // need to offset this section (see format in CommodityFunctions.m and above)
-            NSInteger gmSize = [self.gameModifierArray count];
             if (cell == nil) {
                 cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1
                                                reuseIdentifier:CellIdentifier1] autorelease];
@@ -209,7 +209,7 @@
                 UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(offset+260, 12, offset+150, 23)];
                 slider.maximumValue = [[detail objectForKey:@"max"] floatValue];
                 slider.minimumValue = [[detail objectForKey:@"min"] floatValue];
-                slider.tag = row+gmSize;
+                slider.tag = SLIDER_TAG+row;
                 [slider addTarget:self action:@selector(sliderChanged:) forControlEvents:UIControlEventValueChanged];
                 [cell.contentView addSubview:slider];
                 [slider release];
@@ -229,11 +229,11 @@
             UILabel *cellLabel = (UILabel *)[cell.contentView viewWithTag:LABEL_TAG];
             cellLabel.text = [[self.basicSettingList objectAtIndex:row] objectForKey:@"title"];
 
-            UISlider *cellSlider = (UISlider *)[cell.contentView viewWithTag:row+gmSize];
-            cellSlider.value = [[self.schemeArray objectAtIndex:row+gmSize] floatValue];
+            UISlider *cellSlider = (UISlider *)[cell.contentView viewWithTag:SLIDER_TAG+row];
+            cellSlider.value = [[[self.schemeDictionary objectForKey:@"basic"] objectAtIndex:row] floatValue];
 
             // forced to use this weird format otherwise the label disappears when size of the text is bigger than the original
-            NSString *prestring = [NSString stringWithFormat:@"%d",[[self.schemeArray objectAtIndex:row+gmSize] intValue]];
+            NSString *prestring = [NSString stringWithFormat:@"%d",(NSInteger) cellSlider.value];
             while ([prestring length] <= 4)
                 prestring = [NSString stringWithFormat:@" %@",prestring];
             cell.detailTextLabel.text = prestring;
@@ -246,7 +246,7 @@
                 cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle
                                                reuseIdentifier:CellIdentifier2] autorelease];
                 UISwitch *onOff = [[UISwitch alloc] init];
-                onOff.tag = row;
+                onOff.tag = SWITCH_TAG+row;
                 [onOff addTarget:self action:@selector(toggleSwitch:) forControlEvents:UIControlEventValueChanged];
                 cell.accessoryView = onOff;
                 [onOff release];
@@ -260,7 +260,7 @@
             [cell.imageView.layer setMasksToBounds:YES];
             cell.textLabel.text = [[self.gameModifierArray objectAtIndex:row] objectForKey:@"title"];
             cell.detailTextLabel.text = [[self.gameModifierArray objectAtIndex:row] objectForKey:@"description"];
-            [(UISwitch *)cell.accessoryView setOn:[[self.schemeArray objectAtIndex:row] boolValue] animated:NO];
+            [(UISwitch *)cell.accessoryView setOn:[[[self.schemeDictionary objectForKey:@"gamemod"] objectAtIndex:row] boolValue] animated:NO];
 
             cell.selectionStyle = UITableViewCellSelectionStyleNone;
         }
@@ -270,24 +270,24 @@
 
 -(void) toggleSwitch:(id) sender {
     UISwitch *theSwitch = (UISwitch *)sender;
-    [self.schemeArray replaceObjectAtIndex:theSwitch.tag withObject:[NSNumber numberWithBool:theSwitch.on]];
+    NSMutableArray *array = [self.schemeDictionary objectForKey:@"gamemod"];
+    [array replaceObjectAtIndex:theSwitch.tag-SWITCH_TAG withObject:[NSNumber numberWithBool:theSwitch.on]];
 }
 
 -(void) sliderChanged:(id) sender {
-    // need to offset this section (see format in CommodityFunctions.m and above)
-    NSInteger gmSize = [self.gameModifierArray count];
     // the slider that changed is sent as object
     UISlider *theSlider = (UISlider *)sender;
     // create the indexPath of the row of the slider
-    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:theSlider.tag-gmSize inSection:1];
+    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:theSlider.tag-SLIDER_TAG inSection:1];
     // get its cell
     UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
     // grab the associated label
     UILabel *label = (UILabel *)cell.detailTextLabel;
     // modify it
-    label.text = [NSString stringWithFormat:@"%d",(int)theSlider.value];
-    // save changes in the main array (remember that you need to offset it)
-    [self.schemeArray replaceObjectAtIndex:theSlider.tag withObject:[NSNumber numberWithInt:(int)theSlider.value]];
+    label.text = [NSString stringWithFormat:@"%d",(NSInteger) theSlider.value];
+    // save changes in the main array
+    NSMutableArray *array = [self.schemeDictionary objectForKey:@"basic"];
+    [array replaceObjectAtIndex:theSlider.tag-SLIDER_TAG withObject:[NSNumber numberWithInt:(NSInteger) theSlider.value]];
 }
 
 #pragma mark -
@@ -303,7 +303,7 @@
             [editableCell replyKeyboard];
             break;
         case 1:
-            cellSlider = (UISlider *)[cell.contentView viewWithTag:[indexPath row]+[self.gameModifierArray count]];
+            cellSlider = (UISlider *)[cell.contentView viewWithTag:[indexPath row]+SLIDER_TAG];
             [cellSlider setValue:[[[self.basicSettingList objectAtIndex:[indexPath row]] objectForKey:@"default"] floatValue] animated:YES];
             [self sliderChanged:cellSlider];
             //cell.detailTextLabel.text = [[[self.basicSettingList objectAtIndex:[indexPath row]] objectForKey:@"default"] stringValue];
@@ -343,11 +343,13 @@
 #pragma mark Memory management
 -(void) didReceiveMemoryWarning {
     [super didReceiveMemoryWarning];
+    self.basicSettingList = nil;
+    self.gameModifierArray = nil;
 }
 
 -(void) viewDidUnload {
     self.schemeName = nil;
-    self.schemeArray = nil;
+    self.schemeDictionary = nil;
     self.basicSettingList = nil;
     self.gameModifierArray = nil;
     MSG_DIDUNLOAD();
@@ -356,7 +358,7 @@
 
 -(void) dealloc {
     [schemeName release];
-    [schemeArray release];
+    [schemeDictionary release];
     [basicSettingList release];
     [gameModifierArray release];
     [super dealloc];
--- a/project_files/HedgewarsMobile/Hedgewars.xcodeproj/project.pbxproj	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Hedgewars.xcodeproj/project.pbxproj	Sat Aug 28 05:03:26 2010 +0200
@@ -122,6 +122,7 @@
 		61EBA62911DFF2BC0048B68A /* bricks.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EBA62711DFF2BC0048B68A /* bricks.png */; };
 		61EBA62A11DFF2BC0048B68A /* title.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EBA62811DFF2BC0048B68A /* title.png */; };
 		61EBA62D11DFF3310048B68A /* backgroundAndTitle.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EBA62C11DFF3310048B68A /* backgroundAndTitle.png */; };
+		61EBB1E41228920300C1784F /* bluebox-squeezed.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EBB1E31228920300C1784F /* bluebox-squeezed.png */; };
 		61EF920E11DF57AC003441C4 /* arrowDown.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EF920511DF57AC003441C4 /* arrowDown.png */; };
 		61EF920F11DF57AC003441C4 /* arrowLeft.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EF920611DF57AC003441C4 /* arrowLeft.png */; };
 		61EF921011DF57AC003441C4 /* arrowRight.png in Resources */ = {isa = PBXBuildFile; fileRef = 61EF920711DF57AC003441C4 /* arrowRight.png */; };
@@ -822,6 +823,7 @@
 		61EBA62711DFF2BC0048B68A /* bricks.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = bricks.png; path = "Resources/Frontend-iPad/bricks.png"; sourceTree = "<group>"; };
 		61EBA62811DFF2BC0048B68A /* title.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = title.png; path = "Resources/Frontend-iPad/title.png"; sourceTree = "<group>"; };
 		61EBA62C11DFF3310048B68A /* backgroundAndTitle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = backgroundAndTitle.png; path = "Resources/Frontend-iPad/backgroundAndTitle.png"; sourceTree = "<group>"; };
+		61EBB1E31228920300C1784F /* bluebox-squeezed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "bluebox-squeezed.png"; path = "Resources/Frontend-iPad/bluebox-squeezed.png"; sourceTree = "<group>"; };
 		61EF920511DF57AC003441C4 /* arrowDown.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = arrowDown.png; path = Resources/Overlay/arrowDown.png; sourceTree = "<group>"; };
 		61EF920611DF57AC003441C4 /* arrowLeft.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = arrowLeft.png; path = Resources/Overlay/arrowLeft.png; sourceTree = "<group>"; };
 		61EF920711DF57AC003441C4 /* arrowRight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = arrowRight.png; path = Resources/Overlay/arrowRight.png; sourceTree = "<group>"; };
@@ -1274,6 +1276,7 @@
 		61F903FA11DF58680068B24D /* Frontend-iPad */ = {
 			isa = PBXGroup;
 			children = (
+				61EBB1E31228920300C1784F /* bluebox-squeezed.png */,
 				615AD96112073B4D00F2FF04 /* startGameButton.png */,
 				615AD9EA1207654E00F2FF04 /* helpButton.png */,
 				615AD9E8120764CA00F2FF04 /* backButton.png */,
@@ -1979,6 +1982,7 @@
 				615AD9E9120764CA00F2FF04 /* backButton.png in Resources */,
 				615AD9EB1207654E00F2FF04 /* helpButton.png in Resources */,
 				6187AEBD120781B900B31A27 /* Settings in Resources */,
+				61EBB1E41228920300C1784F /* bluebox-squeezed.png in Resources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
Binary file project_files/HedgewarsMobile/Resources/Frontend-iPad/bluebox-squeezed.png has changed
--- a/project_files/HedgewarsMobile/Resources/MainMenuViewController-iPhone.xib	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/MainMenuViewController-iPhone.xib	Sat Aug 28 05:03:26 2010 +0200
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="7.10">
 	<data>
-		<int key="IBDocument.SystemTarget">800</int>
+		<int key="IBDocument.SystemTarget">1024</int>
 		<string key="IBDocument.SystemVersion">10F569</string>
 		<string key="IBDocument.InterfaceBuilderVersion">788</string>
 		<string key="IBDocument.AppKitVersion">1038.29</string>
@@ -77,7 +77,7 @@
 					<object class="IBUIButton" id="124270424">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">289</int>
-						<string key="NSFrame">{{240, 102}, {220, 52}}</string>
+						<string key="NSFrame">{{186, 102}, {220, 52}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<object class="NSColor" key="IBUIBackgroundColor">
 							<int key="NSColorSpace">1</int>
@@ -113,7 +113,7 @@
 					<object class="IBUIButton" id="745970938">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">265</int>
-						<string key="NSFrame">{{240, 177}, {220, 52}}</string>
+						<string key="NSFrame">{{72, 222}, {220, 52}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<object class="NSColor" key="IBUIBackgroundColor">
 							<int key="NSColorSpace">1</int>
@@ -140,7 +140,7 @@
 					<object class="IBUIButton" id="836337039">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">260</int>
-						<string key="NSFrame">{{12, 144}, {220, 52}}</string>
+						<string key="NSFrame">{{118, 163}, {220, 52}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<object class="NSColor" key="IBUIBackgroundColor">
 							<int key="NSColorSpace">1</int>
@@ -191,7 +191,7 @@
 					<object class="IBUIButton" id="753723574">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">269</int>
-						<string key="NSFrame">{{209, 237}, {59, 52}}</string>
+						<string key="NSFrame">{{401, 237}, {59, 52}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<bool key="IBUIOpaque">NO</bool>
 						<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
@@ -357,12 +357,12 @@
 							<reference ref="533529472"/>
 							<reference ref="821240857"/>
 							<reference ref="936485487"/>
+							<reference ref="818907840"/>
+							<reference ref="171108356"/>
 							<reference ref="753723574"/>
 							<reference ref="124270424"/>
 							<reference ref="745970938"/>
 							<reference ref="836337039"/>
-							<reference ref="818907840"/>
-							<reference ref="171108356"/>
 						</object>
 						<reference key="parent" ref="0"/>
 					</object>
@@ -559,13 +559,6 @@
 					<string key="className">NSObject</string>
 					<object class="IBClassDescriptionSource" key="sourceIdentifier">
 						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSNetServices.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
 						<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
 					</object>
 				</object>
@@ -573,13 +566,6 @@
 					<string key="className">NSObject</string>
 					<object class="IBClassDescriptionSource" key="sourceIdentifier">
 						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSPort.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
 						<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
 					</object>
 				</object>
@@ -587,13 +573,6 @@
 					<string key="className">NSObject</string>
 					<object class="IBClassDescriptionSource" key="sourceIdentifier">
 						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSStream.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
 						<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
 					</object>
 				</object>
@@ -615,13 +594,6 @@
 					<string key="className">NSObject</string>
 					<object class="IBClassDescriptionSource" key="sourceIdentifier">
 						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSXMLParser.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
 						<string key="minorKey">QuartzCore.framework/Headers/CAAnimation.h</string>
 					</object>
 				</object>
@@ -763,7 +735,7 @@
 		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
 		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
 			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
-			<integer value="800" key="NS.object.0"/>
+			<integer value="1024" key="NS.object.0"/>
 		</object>
 		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
 			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.InterfaceBuilder3</string>
--- a/project_files/HedgewarsMobile/Resources/MapConfigViewController-iPad.xib	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/MapConfigViewController-iPad.xib	Sat Aug 28 05:03:26 2010 +0200
@@ -100,22 +100,25 @@
 					<object class="IBUIImageView" id="742028380">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">292</int>
-						<string key="NSFrame">{{106, 707}, {320, 41}}</string>
+						<string key="NSFrame">{{106, 707}, {320, 40}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<bool key="IBUIOpaque">NO</bool>
 						<bool key="IBUIUserInteractionEnabled">NO</bool>
 						<string key="targetRuntimeIdentifier">IBIPadFramework</string>
-						<reference key="IBUIImage" ref="1034685562"/>
+						<object class="NSCustomResource" key="IBUIImage" id="362444284">
+							<string key="NSClassName">NSImage</string>
+							<string key="NSResourceName">bluebox-squeezed.png</string>
+						</object>
 					</object>
 					<object class="IBUIImageView" id="696928530">
 						<reference key="NSNextResponder" ref="191373211"/>
 						<int key="NSvFlags">292</int>
-						<string key="NSFrame">{{594, 707}, {320, 41}}</string>
+						<string key="NSFrame">{{594, 707}, {320, 40}}</string>
 						<reference key="NSSuperview" ref="191373211"/>
 						<bool key="IBUIOpaque">NO</bool>
 						<bool key="IBUIUserInteractionEnabled">NO</bool>
 						<string key="targetRuntimeIdentifier">IBIPadFramework</string>
-						<reference key="IBUIImage" ref="1034685562"/>
+						<reference key="IBUIImage" ref="362444284"/>
 					</object>
 					<object class="IBUILabel" id="848132519">
 						<reference key="NSNextResponder" ref="191373211"/>
@@ -1188,6 +1191,7 @@
 				<bool key="EncodedWithXMLCoder">YES</bool>
 				<string>backButton.png</string>
 				<string>background.png</string>
+				<string>bluebox-squeezed.png</string>
 				<string>bluebox.png</string>
 				<string>helpButton.png</string>
 				<string>startGameButton.png</string>
@@ -1197,6 +1201,7 @@
 				<bool key="EncodedWithXMLCoder">YES</bool>
 				<string>{64, 64}</string>
 				<string>{1024, 768}</string>
+				<string>{320, 40}</string>
 				<string>{512, 512}</string>
 				<string>{64, 64}</string>
 				<string>{142, 64}</string>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Barrel Mayhem.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Barrel Mayhem.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<integer>100</integer>
-	<integer>30</integer>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>0</integer>
-	<integer>0</integer>
-	<integer>1</integer>
-	<integer>0</integer>
-	<integer>40</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>30</integer>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>0</integer>
+		<integer>0</integer>
+		<integer>1</integer>
+		<integer>0</integer>
+		<integer>40</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Basketball.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Basketball.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<true/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<true/>
-	<false/>
-	<integer>100</integer>
-	<integer>30</integer>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>0</integer>
-	<integer>3</integer>
-	<integer>4</integer>
-	<integer>0</integer>
-	<integer>0</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>30</integer>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>0</integer>
+		<integer>3</integer>
+		<integer>4</integer>
+		<integer>0</integer>
+		<integer>0</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<true/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<true/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Default.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Default.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<integer>100</integer>
-	<integer>45</integer>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>5</integer>
-	<integer>3</integer>
-	<integer>4</integer>
-	<integer>0</integer>
-	<integer>2</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>45</integer>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>5</integer>
+		<integer>3</integer>
+		<integer>4</integer>
+		<integer>0</integer>
+		<integer>2</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Minefield.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Minefield.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<true/>
-	<false/>
-	<integer>150</integer>
-	<integer>30</integer>
-	<integer>50</integer>
-	<integer>15</integer>
-	<integer>0</integer>
-	<integer>0</integer>
-	<integer>80</integer>
-	<integer>0</integer>
-	<integer>0</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>150</integer>
+		<integer>30</integer>
+		<integer>50</integer>
+		<integer>15</integer>
+		<integer>0</integer>
+		<integer>0</integer>
+		<integer>80</integer>
+		<integer>0</integer>
+		<integer>0</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<true/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Pro Mode.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Pro Mode.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>0</integer>
-	<integer>3</integer>
-	<integer>4</integer>
-	<integer>0</integer>
-	<integer>2</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>0</integer>
+		<integer>3</integer>
+		<integer>4</integer>
+		<integer>0</integer>
+		<integer>2</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Shoppa.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Shoppa.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<true/>
-	<false/>
-	<integer>100</integer>
-	<integer>30</integer>
-	<integer>100</integer>
-	<integer>50</integer>
-	<integer>1</integer>
-	<integer>3</integer>
-	<integer>4</integer>
-	<integer>0</integer>
-	<integer>0</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>300</integer>
+		<integer>100</integer>
+		<integer>50</integer>
+		<integer>1</integer>
+		<integer>3</integer>
+		<integer>4</integer>
+		<integer>0</integer>
+		<integer>0</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<true/>
+		<false/>
+	</array>
+</dict>
 </plist>
--- a/project_files/HedgewarsMobile/Resources/Settings/Schemes/Tunnel Hogs.plist	Sat Aug 28 02:35:26 2010 +0200
+++ b/project_files/HedgewarsMobile/Resources/Settings/Schemes/Tunnel Hogs.plist	Sat Aug 28 05:03:26 2010 +0200
@@ -1,33 +1,39 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 <plist version="1.0">
-<array>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<false/>
-	<true/>
-	<false/>
-	<false/>
-	<true/>
-	<true/>
-	<true/>
-	<false/>
-	<integer>100</integer>
-	<integer>30</integer>
-	<integer>100</integer>
-	<integer>15</integer>
-	<integer>5</integer>
-	<integer>3</integer>
-	<integer>10</integer>
-	<integer>10</integer>
-	<integer>10</integer>
-</array>
+<dict>
+	<key>basic</key>
+	<array>
+		<integer>100</integer>
+		<integer>30</integer>
+		<integer>100</integer>
+		<integer>15</integer>
+		<integer>5</integer>
+		<integer>3</integer>
+		<integer>10</integer>
+		<integer>10</integer>
+		<integer>10</integer>
+	</array>
+	<key>gamemod</key>
+	<array>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<false/>
+		<true/>
+		<false/>
+		<false/>
+		<true/>
+		<true/>
+		<true/>
+		<false/>
+	</array>
+</dict>
 </plist>