author | Medo <smaxein@googlemail.com> |
Sun, 12 Aug 2012 23:51:36 +0200 | |
changeset 7494 | e65adfc99f15 |
parent 7485 | 0481bd74267c |
child 7508 | 763d3961400b |
permissions | -rw-r--r-- |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
1 |
/* |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
2 |
* Hedgewars for Android. An Android port of Hedgewars, a free turn based strategy game |
6700 | 3 |
* Copyright (c) 2011-2012 Richard Deurwaarder <xeli@xelification.com> |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
4 |
* |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
5 |
* This program is free software; you can redistribute it and/or modify |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
6 |
* it under the terms of the GNU General Public License as published by |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
7 |
* the Free Software Foundation; version 2 of the License |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
8 |
* |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
9 |
* This program is distributed in the hope that it will be useful, |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
10 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
11 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
12 |
* GNU General Public License for more details. |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
13 |
* |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
14 |
* You should have received a copy of the GNU General Public License |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
15 |
* along with this program; if not, write to the Free Software |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
16 |
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
17 |
*/ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
18 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
19 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
20 |
package org.hedgewars.hedgeroid; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
21 |
|
7485 | 22 |
import java.io.File; |
23 |
import java.io.FileNotFoundException; |
|
24 |
import java.io.IOException; |
|
25 |
import java.util.ArrayList; |
|
26 |
import java.util.Collections; |
|
27 |
import java.util.List; |
|
28 |
import java.util.UUID; |
|
29 |
||
6488
c356ddebab84
android: moved the different objects representing the different game parameters to a different package
Xeli
parents:
6486
diff
changeset
|
30 |
import org.hedgewars.hedgeroid.Datastructures.FrontendDataUtils; |
7485 | 31 |
import org.hedgewars.hedgeroid.Datastructures.GameConfig; |
32 |
import org.hedgewars.hedgeroid.Datastructures.MapFile; |
|
33 |
import org.hedgewars.hedgeroid.Datastructures.MapRecipe; |
|
6488
c356ddebab84
android: moved the different objects representing the different game parameters to a different package
Xeli
parents:
6486
diff
changeset
|
34 |
import org.hedgewars.hedgeroid.Datastructures.Scheme; |
7485 | 35 |
import org.hedgewars.hedgeroid.Datastructures.Schemes; |
36 |
import org.hedgewars.hedgeroid.Datastructures.TeamInGame; |
|
37 |
import org.hedgewars.hedgeroid.Datastructures.Weaponset; |
|
38 |
import org.hedgewars.hedgeroid.Datastructures.Weaponsets; |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
39 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
40 |
import android.app.Activity; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
41 |
import android.content.Intent; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
42 |
import android.graphics.drawable.Drawable; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
43 |
import android.os.Bundle; |
7485 | 44 |
import android.util.Log; |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
45 |
import android.view.View; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
46 |
import android.view.View.OnClickListener; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
47 |
import android.widget.AdapterView; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
48 |
import android.widget.AdapterView.OnItemSelectedListener; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
49 |
import android.widget.ArrayAdapter; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
50 |
import android.widget.ImageButton; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
51 |
import android.widget.ImageView; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
52 |
import android.widget.Spinner; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
53 |
import android.widget.Toast; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
54 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
55 |
public class StartGameActivity extends Activity { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
56 |
public static final int ACTIVITY_TEAM_SELECTOR = 0; |
7476
2fb781bbdd51
Hedgeroid: Start using the frontlib for more operations
Medo <smaxein@googlemail.com>
parents:
6844
diff
changeset
|
57 |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
58 |
private ImageButton start, back, team; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
59 |
private Spinner maps, gameplay, gamescheme, weapons, themes; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
60 |
private ImageView themeIcon, mapPreview, teamCount; |
7485 | 61 |
|
62 |
private List<TeamInGame> teams = new ArrayList<TeamInGame>(); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
63 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
64 |
public void onCreate(Bundle savedInstanceState){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
65 |
super.onCreate(savedInstanceState); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
66 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
67 |
setContentView(R.layout.starting_game); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
68 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
69 |
back = (ImageButton) findViewById(R.id.btnBack); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
70 |
team = (ImageButton) findViewById(R.id.btnTeams); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
71 |
start = (ImageButton) findViewById(R.id.btnStart); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
72 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
73 |
maps = (Spinner) findViewById(R.id.spinMaps); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
74 |
gameplay = (Spinner) findViewById(R.id.spinGameplay); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
75 |
gamescheme = (Spinner) findViewById(R.id.spinGamescheme); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
76 |
weapons = (Spinner) findViewById(R.id.spinweapons); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
77 |
themes = (Spinner) findViewById(R.id.spinTheme); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
78 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
79 |
themeIcon = (ImageView) findViewById(R.id.imgTheme); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
80 |
mapPreview = (ImageView) findViewById(R.id.mapPreview); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
81 |
teamCount = (ImageView) findViewById(R.id.imgTeamsCount); |
6051
88fb92444d19
Added two default teams to the apk, so people who first download it don't have to make two teams before playing their first game
Xeli
parents:
6049
diff
changeset
|
82 |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
83 |
start.setOnClickListener(startClicker); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
84 |
back.setOnClickListener(backClicker); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
85 |
team.setOnClickListener(teamClicker); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
86 |
|
7485 | 87 |
List<MapFile> mapFiles; |
88 |
try { |
|
89 |
mapFiles = FrontendDataUtils.getMaps(this); |
|
90 |
} catch (FileNotFoundException e) { |
|
91 |
Log.e("StartGameActivity", e.getMessage(), e); |
|
92 |
mapFiles = Collections.emptyList(); |
|
93 |
} |
|
94 |
ArrayAdapter<?> adapter = new ArrayAdapter<MapFile>(this, R.layout.listview_item, mapFiles); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
95 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
96 |
maps.setAdapter(adapter); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
97 |
maps.setOnItemSelectedListener(mapsClicker); |
7485 | 98 |
//set to first nonmission |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
99 |
for(int i = 0; i < adapter.getCount(); i++){ |
7485 | 100 |
if(!((MapFile)adapter.getItem(i)).isMission){ |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
101 |
maps.setSelection(i, false); |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
102 |
break; |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
103 |
} |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
104 |
} |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
105 |
|
7485 | 106 |
List<String> gameStyles; |
107 |
try { |
|
108 |
gameStyles = FrontendDataUtils.getGameStyles(this); |
|
109 |
} catch (FileNotFoundException e) { |
|
110 |
Log.e("StartGameActivity", e.getMessage(), e); |
|
111 |
gameStyles = Collections.emptyList(); |
|
112 |
} |
|
113 |
adapter = new ArrayAdapter<String>(this, R.layout.listview_item, gameStyles); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
114 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
115 |
gameplay.setAdapter(adapter); |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
116 |
//set to first nonmap |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
117 |
for(int i = 0; i < adapter.getCount(); i++){ |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
118 |
if(((String)adapter.getItem(i)).equals("None")){ |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
119 |
gameplay.setSelection(i, false); |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
120 |
break; |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
121 |
} |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
122 |
} |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
123 |
|
7485 | 124 |
List<Scheme> schemes; |
125 |
try { |
|
126 |
schemes = new ArrayList<Scheme>(Schemes.loadAllSchemes(this).values()); |
|
127 |
} catch (IOException e) { |
|
128 |
Log.e("StartGameActivity", e.getMessage(), e); |
|
129 |
schemes = Collections.emptyList(); |
|
130 |
} |
|
131 |
adapter = new ArrayAdapter<Scheme>(this, R.layout.listview_item, schemes); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
132 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
133 |
gamescheme.setAdapter(adapter); |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
134 |
for(int i = 0; i < adapter.getCount(); i++){ |
7485 | 135 |
if(((Scheme)adapter.getItem(i)).name.equals("Default")){ |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
136 |
gamescheme.setSelection(i, false); |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
137 |
break; |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
138 |
} |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
139 |
} |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
140 |
|
7485 | 141 |
List<Weaponset> weaponsets; |
142 |
try { |
|
143 |
weaponsets = Weaponsets.loadAllWeaponsets(this); |
|
144 |
} catch(IOException e) { |
|
145 |
Log.e("StartGameActivity", e.getMessage(), e); |
|
146 |
weaponsets = Collections.emptyList(); |
|
147 |
} |
|
148 |
adapter = new ArrayAdapter<Weaponset>(this, R.layout.listview_item, weaponsets); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
149 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
150 |
weapons.setAdapter(adapter); |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
151 |
for(int i = 0; i < adapter.getCount(); i++){ |
7485 | 152 |
if(((Weaponset)adapter.getItem(i)).name.equals("Crazy")){ |
6486
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
153 |
weapons.setSelection(i, false); |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
154 |
break; |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
155 |
} |
2a3ee24764bb
android: startgamemenu now has some default values, plus the themes are ordered alphabetically
Xeli
parents:
6350
diff
changeset
|
156 |
} |
7485 | 157 |
|
158 |
List<String> themeList; |
|
159 |
try { |
|
160 |
themeList = FrontendDataUtils.getThemes(this); |
|
161 |
} catch(FileNotFoundException e) { |
|
162 |
Log.e("StartGameActivity", e.getMessage(), e); |
|
163 |
themeList = Collections.emptyList(); |
|
164 |
} |
|
165 |
adapter = new ArrayAdapter<String>(this, R.layout.listview_item, themeList); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
166 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
167 |
themes.setAdapter(adapter); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
168 |
themes.setOnItemSelectedListener(themesClicker); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
169 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
170 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
171 |
private void startTeamsActivity(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
172 |
Intent i = new Intent(StartGameActivity.this, TeamSelectionActivity.class); |
7485 | 173 |
TeamSelectionActivity.activityParams = new ArrayList<TeamInGame>(teams); |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
174 |
startActivityForResult(i, ACTIVITY_TEAM_SELECTOR); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
175 |
} |
6051
88fb92444d19
Added two default teams to the apk, so people who first download it don't have to make two teams before playing their first game
Xeli
parents:
6049
diff
changeset
|
176 |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
177 |
public void onActivityResult(int requestCode, int resultCode, Intent data){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
178 |
switch(requestCode){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
179 |
case ACTIVITY_TEAM_SELECTOR: |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
180 |
if(resultCode == Activity.RESULT_OK){ |
7485 | 181 |
teams = new ArrayList<TeamInGame>(TeamSelectionActivity.activityReturn); |
182 |
TeamSelectionActivity.activityReturn = Collections.emptyList(); |
|
183 |
teamCount.getDrawable().setLevel(teams.size()); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
184 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
185 |
break; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
186 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
187 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
188 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
189 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
190 |
private OnItemSelectedListener themesClicker = new OnItemSelectedListener(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
191 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
192 |
public void onItemSelected(AdapterView<?> arg0, View view, int position, long rowId) { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
193 |
String themeName = (String) arg0.getAdapter().getItem(position); |
6350 | 194 |
Drawable themeIconDrawable = Drawable.createFromPath(Utils.getDataPath(StartGameActivity.this) + "Themes/" + themeName + "/icon@2X.png"); |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
195 |
themeIcon.setImageDrawable(themeIconDrawable); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
196 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
197 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
198 |
public void onNothingSelected(AdapterView<?> arg0) { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
199 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
200 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
201 |
}; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
202 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
203 |
private OnItemSelectedListener mapsClicker = new OnItemSelectedListener(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
204 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
205 |
public void onItemSelected(AdapterView<?> arg0, View view, int position,long rowId) { |
7485 | 206 |
MapFile map = (MapFile)arg0.getAdapter().getItem(position); |
207 |
try { |
|
208 |
File previewFile = map.getPreviewFile(getApplicationContext()); |
|
209 |
mapPreview.setImageDrawable(Drawable.createFromPath(previewFile.getAbsolutePath())); |
|
210 |
} catch (FileNotFoundException e) { |
|
211 |
mapPreview.setImageDrawable(null); |
|
212 |
} |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
213 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
214 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
215 |
public void onNothingSelected(AdapterView<?> arg0) { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
216 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
217 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
218 |
}; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
219 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
220 |
private OnClickListener startClicker = new OnClickListener(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
221 |
public void onClick(View v) { |
7485 | 222 |
if(teams.size() < 2) { |
223 |
Toast.makeText(getApplicationContext(), R.string.not_enough_teams, Toast.LENGTH_LONG).show(); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
224 |
startTeamsActivity(); |
7476
2fb781bbdd51
Hedgeroid: Start using the frontlib for more operations
Medo <smaxein@googlemail.com>
parents:
6844
diff
changeset
|
225 |
} else { |
7485 | 226 |
String style = (String)gameplay.getSelectedItem(); |
227 |
Scheme scheme = (Scheme)gamescheme.getSelectedItem(); |
|
228 |
String mapName = ((MapFile)maps.getSelectedItem()).name; |
|
229 |
String theme = (String)themes.getSelectedItem(); |
|
230 |
MapRecipe map = MapRecipe.makeMap(mapName, UUID.randomUUID().toString(), theme); |
|
231 |
Weaponset weaponset = (Weaponset)weapons.getSelectedItem(); |
|
232 |
SDLActivity.startConfig = new GameConfig(style, scheme, map, teams, weaponset); |
|
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
233 |
Intent i = new Intent(StartGameActivity.this, SDLActivity.class); |
7476
2fb781bbdd51
Hedgeroid: Start using the frontlib for more operations
Medo <smaxein@googlemail.com>
parents:
6844
diff
changeset
|
234 |
startActivity(i); |
2fb781bbdd51
Hedgeroid: Start using the frontlib for more operations
Medo <smaxein@googlemail.com>
parents:
6844
diff
changeset
|
235 |
} |
6047
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
236 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
237 |
}; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
238 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
239 |
private OnClickListener backClicker = new OnClickListener(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
240 |
public void onClick(View v) { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
241 |
finish(); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
242 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
243 |
}; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
244 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
245 |
private OnClickListener teamClicker = new OnClickListener(){ |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
246 |
public void onClick(View v) { |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
247 |
startTeamsActivity(); |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
248 |
} |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
249 |
}; |
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
250 |
|
10011f051f9c
Changed package name from org.hedgewars.mobile to org.hedgewars.hedgeroid to upload it to the market
Xeli
parents:
diff
changeset
|
251 |
} |