Player: can now be edited
This commit is contained in:
		
					parent
					
						
							
								c87641a921
							
						
					
				
			
			
				commit
				
					
						ef14a452f6
					
				
			
		
					 4 changed files with 55 additions and 45 deletions
				
			
		
							
								
								
									
										2
									
								
								.idea/misc.xml
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										2
									
								
								.idea/misc.xml
									
										
									
										generated
									
									
									
								
							|  | @ -13,7 +13,7 @@ | |||
|     <ConfirmationsSetting value="0" id="Add" /> | ||||
|     <ConfirmationsSetting value="0" id="Remove" /> | ||||
|   </component> | ||||
|   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> | ||||
|   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" assert-keyword="true" jdk-15="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> | ||||
|     <output url="file://$PROJECT_DIR$/build/classes" /> | ||||
|   </component> | ||||
|   <component name="ProjectType"> | ||||
|  |  | |||
|  | @ -203,6 +203,8 @@ class Player implements Serializable { | |||
|     String getName() {return name;} | ||||
|     String getClassName() {return CLASS_STRINGS[classInt];} | ||||
|     String getRaceName() {return RACE_STRINGS[raceInt];} | ||||
|     int getClassInt() {return classInt;} | ||||
|     int getRaceInt() {return raceInt;} | ||||
| 
 | ||||
|     private void setAtk(int[] atk) {this.atk = atk; if(classInt != NULL) setClass();} | ||||
| 
 | ||||
|  |  | |||
|  | @ -17,14 +17,13 @@ import com.nispok.snackbar.SnackbarManager; | |||
| 
 | ||||
| public class PlayerEditor extends ActionBarActivity { | ||||
| 
 | ||||
|     private EditText name, level; | ||||
|     private EditText str, con, dex, wis, intel, cha; | ||||
|     private EditText name, xp; | ||||
|     private EditText[] atk = new EditText[7]; | ||||
|     private Spinner classSpinner, raceSpinner; | ||||
| 
 | ||||
|     @Override | ||||
|     protected void onCreate(Bundle savedInstanceState) { | ||||
|         super.onCreate(savedInstanceState); | ||||
| //        getSupportActionBar().setDisplayHomeAsUpEnabled(true); | ||||
|         setContentView(R.layout.activity_player_editor); | ||||
|         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); | ||||
|         setSupportActionBar(toolbar); | ||||
|  | @ -32,13 +31,13 @@ public class PlayerEditor extends ActionBarActivity { | |||
| 
 | ||||
|         name = (EditText) findViewById(R.id.namePlayerEdit); | ||||
|         name.requestFocus(); | ||||
|         level = (EditText) findViewById(R.id.xpEdit); | ||||
|         str = (EditText) findViewById(R.id.STR); | ||||
|         con = (EditText) findViewById(R.id.CON); | ||||
|         dex = (EditText) findViewById(R.id.DEX); | ||||
|         wis = (EditText) findViewById(R.id.WIS); | ||||
|         intel = (EditText) findViewById(R.id.INT); | ||||
|         cha = (EditText) findViewById(R.id.CHA); | ||||
|         xp = (EditText) findViewById(R.id.xpEdit); | ||||
|         atk[Player.STR] = (EditText) findViewById(R.id.STR); | ||||
|         atk[Player.CON] = (EditText) findViewById(R.id.CON); | ||||
|         atk[Player.DEX] = (EditText) findViewById(R.id.DEX); | ||||
|         atk[Player.WIS] = (EditText) findViewById(R.id.WIS); | ||||
|         atk[Player.INT] = (EditText) findViewById(R.id.INT); | ||||
|         atk[Player.CHA] = (EditText) findViewById(R.id.CHA); | ||||
| 
 | ||||
|         classSpinner = (Spinner) findViewById(R.id.classSpinner); | ||||
|         classSpinner.setAdapter( | ||||
|  | @ -57,6 +56,17 @@ public class PlayerEditor extends ActionBarActivity { | |||
|                         Player.RACE_STRINGS | ||||
|                 ) | ||||
|         ); | ||||
|         int position = getIntent().getExtras().getInt("player", -1); | ||||
|         if ( position != -1 ) { | ||||
|             Player p = new Player(getSharedPreferences("player" + position, MODE_PRIVATE)); | ||||
|             name.setText(p.getName()); | ||||
|             xp.setText(p.getXp()); | ||||
|             int[] attack = p.getAtk(); | ||||
|             for (int i = Player.STR; i < Player.CHA + 1; i++) | ||||
|                 atk[i].setText(attack[i]); | ||||
|             classSpinner.setSelection(p.getClassInt()); | ||||
|             raceSpinner.setSelection(p.getRaceInt()); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
| 
 | ||||
|  | @ -104,34 +114,28 @@ public class PlayerEditor extends ActionBarActivity { | |||
|         int raceInt = raceSpinner.getSelectedItemPosition(); | ||||
| 
 | ||||
|         int pxInt = -1; | ||||
|         if (!level.getText().toString().isEmpty()) | ||||
|             pxInt = Integer.parseInt(level.getText().toString()); | ||||
|         if (!xp.getText().toString().isEmpty()) | ||||
|             pxInt = Integer.parseInt(xp.getText().toString()); | ||||
|         else | ||||
|             xp.setError(getString(R.string.required)); | ||||
| 
 | ||||
|         int fue = 0, con = 0, des = 0, intel = 0, sab = 0, car = 0; | ||||
|         if (!this.cha.getText().toString().isEmpty()) | ||||
|             car = Integer.parseInt(this.cha.getText().toString()); | ||||
|         if (!this.str.getText().toString().isEmpty()) | ||||
|             fue = Integer.parseInt(this.str.getText().toString()); | ||||
|         if (!this.con.getText().toString().isEmpty()) | ||||
|             con = Integer.parseInt(this.con.getText().toString()); | ||||
|         if (!this.dex.getText().toString().isEmpty()) | ||||
|             des = Integer.parseInt(this.dex.getText().toString()); | ||||
|         if (!this.intel.getText().toString().isEmpty()) | ||||
|             intel = Integer.parseInt(this.intel.getText().toString()); | ||||
|         if (!this.wis.getText().toString().isEmpty()) | ||||
|             sab = Integer.parseInt(this.wis.getText().toString()); | ||||
|         int[] atkInts = new int[7]; | ||||
|         for (int i = Player.STR; i <= Player.CHA; i++) | ||||
|             if (!atk[i].getText().toString().isEmpty()) | ||||
|                 atkInts[i] = Integer.parseInt(atk[i].getText().toString()); | ||||
|         boolean validAtk = true; | ||||
|         for (int i : atkInts) | ||||
|             if (i == 0) { | ||||
|                 validAtk = false; | ||||
|                 break; | ||||
|             } | ||||
| 
 | ||||
|         if ( | ||||
|                 !nameString.isEmpty() && | ||||
|                         classInt != Player.NULL && | ||||
|                         raceInt != Player.NULL && | ||||
|                         pxInt != -1 && | ||||
|                         car != 0 && | ||||
|                         fue != 0 && | ||||
|                         con != 0 && | ||||
|                         des != 0 && | ||||
|                         intel != 0 && | ||||
|                         sab != 0 | ||||
|                         validAtk | ||||
|                 ) { | ||||
|             SharedPreferences p = getSharedPreferences(Welcome.PREFERENCES, MODE_PRIVATE); | ||||
|             int i = p.getInt("players", 0); | ||||
|  | @ -149,12 +153,12 @@ public class PlayerEditor extends ActionBarActivity { | |||
|             ed.putInt("raceInt", raceInt); | ||||
|             ed.putInt("px", pxInt); | ||||
| 
 | ||||
|             ed.putInt("fue", fue); | ||||
|             ed.putInt("car", car); | ||||
|             ed.putInt("int", intel); | ||||
|             ed.putInt("sab", sab); | ||||
|             ed.putInt("con", con); | ||||
|             ed.putInt("des", des); | ||||
|             ed.putInt("str", atkInts[Player.STR]); | ||||
|             ed.putInt("cha", atkInts[Player.CHA]); | ||||
|             ed.putInt("int", atkInts[Player.INT]); | ||||
|             ed.putInt("wis", atkInts[Player.WIS]); | ||||
|             ed.putInt("con", atkInts[Player.CON]); | ||||
|             ed.putInt("dex", atkInts[Player.DEX]); | ||||
|             //TEMP | ||||
|             ed.putBoolean("new", true); | ||||
|             ed.apply(); | ||||
|  |  | |||
|  | @ -80,9 +80,9 @@ public class Welcome extends ActionBarActivity { | |||
|                     @Override | ||||
|                     public void onClick(DialogInterface dialog, int which) { | ||||
|                         if (which == 0) { | ||||
|                             startActivity(new Intent(activity, PlayerEditor.class).putExtra("first_time", true)); | ||||
|                             startActivity(new Intent(activity, PlayerEditor.class).putExtra("player", -1)); | ||||
|                         } else if (which == 1) { | ||||
|                             startActivity(new Intent(activity, PlayerEditor.class).putExtra("first_time", false)); | ||||
|                             startActivity(new Intent(activity, PlayerEditor.class).putExtra("player", -1)); | ||||
|                         } else if (which == 2) { | ||||
|                             AlertDialog.Builder importDialog = new AlertDialog.Builder(activity); | ||||
|                             final EditText input = new EditText(activity); | ||||
|  | @ -192,7 +192,7 @@ public class Welcome extends ActionBarActivity { | |||
|                             new DialogInterface.OnClickListener() { | ||||
|                                 @Override | ||||
|                                 public void onClick(DialogInterface dialog, int which) { | ||||
|                                     if (which == 0) { | ||||
|                                     if (which == 0) { //delete | ||||
|                                         //delete the item | ||||
|                                         SnackbarManager.show( | ||||
|                                                 Snackbar.with(getApplicationContext()) | ||||
|  | @ -227,13 +227,17 @@ public class Welcome extends ActionBarActivity { | |||
|                                                         }), | ||||
|                                                 activity | ||||
|                                         ); | ||||
|                                     } else if (which == 1) { | ||||
|                                     } else if (which == 1) { //edit | ||||
|                                         //TODO: edit the player | ||||
|                                         /**TEMP*/ | ||||
|                                         Toast.makeText( | ||||
|                                                 activity, "Editor not implemented yet", Toast.LENGTH_LONG) | ||||
|                                                 activity, "Consumed PG and surges won't be restored by the editor", Toast.LENGTH_LONG) | ||||
|                                                 .show(); | ||||
|                                     } else if (which == 2) { | ||||
|                                         startActivity(new Intent( | ||||
|                                                 getApplicationContext(), | ||||
|                                                 PlayerEditor.class | ||||
|                                         ).putExtra("player", position)); | ||||
|                                     } else if (which == 2) { //export | ||||
|                                         //TODO: export as files | ||||
|                                         String name = p.getString("player" + position, ""); | ||||
| //                                        File file = new File(getCacheDir() + File.separator + name + ".dm"); | ||||
|  | @ -282,7 +286,7 @@ public class Welcome extends ActionBarActivity { | |||
| //                                                e.printStackTrace(); | ||||
| //                                            } | ||||
| //                                        } | ||||
|                                     } else { | ||||
|                                     } else { //experimental | ||||
|                                         /**TEMP*/ | ||||
|                                         startActivity(new Intent( | ||||
|                                                 getApplicationContext(), Display.class | ||||
|  |  | |||
		Reference in a new issue