Changeset c3ad11c in advance-wars


Ignore:
Timestamp:
Aug 26, 2011, 9:54:05 PM (13 years ago)
Author:
dportnoy <devnull@…>
Branches:
master
Children:
511177b
Parents:
99433bb
Message:

Units are now colored based on the player that controls them. The controlling player is specified in the unit's constructor.

Location:
src/com/medievaltech
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • src/com/medievaltech/advancewars/GameView.java

    r99433bb rc3ad11c  
    22
    33import java.io.*;
     4import java.util.*;
    45
    56import com.medievaltech.advancewars.Enum.*;
     
    2728        public Turn mTurn;
    2829       
    29         //temporary variable to let the enemy control a specific unit
    30         //ownership of units hasn't been implemented yet
    31         public Unit enemyUnit;
     30        public Player enemy;
     31        private Unit selectedUnit;
    3232       
    3333        private int mCanvasHeight = 1;
     
    3535
    3636        private Paint mLinePaint, mTextPaint, mButtonPaint, mTilePaint1,
    37                                 mTilePaint2, mSelectionPaint, mUnitPaint;
     37                                mTilePaint2, mSelectionPaint, mUnitPaint1, mUnitPaint2;
    3838
    3939        /** Indicate whether the surface has been created & is ready to draw */
     
    4444       
    4545        private com.medievaltech.gui.Window wndMainMenu;
    46         private Unit selectedUnit;
    4746       
    4847        public DrawingThread(SurfaceHolder surfaceHolder, Context context, Handler handler) {
     
    7372            mTilePaint2.setARGB(255, 0, 0, 255);
    7473           
    75             mUnitPaint = new Paint();
    76             mUnitPaint.setAntiAlias(true);
    77             mUnitPaint.setARGB(255, 255, 0, 0);
     74            mUnitPaint1 = new Paint();
     75            mUnitPaint1.setAntiAlias(true);
     76            mUnitPaint1.setARGB(255, 255, 0, 0);
     77           
     78            mUnitPaint2 = new Paint();
     79            mUnitPaint2.setAntiAlias(true);
     80            mUnitPaint2.setARGB(255, 160, 160, 255);
    7881           
    7982            mSelectionPaint = new Paint();
     
    106109            }
    107110           
    108             enemyUnit = new Soldier(mUnitPaint);
    109            
    110             mMap.getTile(0, 0).addUnit(enemyUnit);
    111             mMap.getTile(2, 3).addUnit(new Soldier(mUnitPaint));
    112             mMap.getTile(5, 6).addUnit(new Soldier(mUnitPaint));
     111            Player humanPlayer = new Player("Human", mUnitPaint1);
     112            enemy = new Player("Comp", mUnitPaint2);
     113           
     114            mMap.getTile(0, 0).addUnit(new Soldier(enemy));
     115            mMap.getTile(2, 3).addUnit(new Soldier(humanPlayer));
     116            mMap.getTile(5, 6).addUnit(new Soldier(humanPlayer));
    113117           
    114118            mTurn = Turn.YOUR_TURN;
     
    184188                switch(mGameState) {
    185189                case BATTLE_MAP:
    186                         int x = thread.enemyUnit.location.x;
    187                         int y = thread.enemyUnit.location.y;
    188                         thread.mMap.getTile(x, y).removeUnit();
    189                                 thread.mMap.getTile(x, y+1).addUnit(thread.enemyUnit);
    190                         mTurn = Turn.YOUR_TURN;
     190                        Iterator<Unit> iter = enemy.getControlledUnits().iterator();
     191                        Unit cur;
     192                        int x, y;
     193                       
     194                        Log.i("AdvanceWars", "starting to move enemy units");
     195                        while(iter.hasNext()) {
     196                                cur = iter.next();
     197                                x = cur.location.x;
     198                        y = cur.location.y;
     199                       
     200                        Log.i("AdvanceWars", "moving enemy unit");
     201                       
     202                        //any unit that's in the way is removed (needs to be changed eventuallyy)
     203                        thread.mMap.getTile(x, y).removeUnit();
     204                                thread.mMap.getTile(x, y+1).addUnit(cur);
     205                        }
     206                        Log.i("AdvanceWars", "finished moving enemy units");
     207                       
     208                               
     209                                mTurn = Turn.YOUR_TURN;
    191210                        break;
    192211                }
     
    295314                                        int y = Integer.parseInt(unit.substring(unit.indexOf(",")+1));
    296315                                       
    297                                         mGame.mThread.mMap.getTile(x, y).addUnit(new Soldier(mGame.mThread.mUnitPaint));
     316                                        Player humanPlayer = new Player("Human", mGame.mThread.mUnitPaint1);
     317                                       
     318                                        mGame.mThread.mMap.getTile(x, y).addUnit(new Soldier(humanPlayer));
    298319                                }
    299320                               
     
    328349                        }
    329350                       
     351                        Log.i("AdvanceWars", "Touch event handling finished");
     352                       
    330353                        break;
    331354                }
  • src/com/medievaltech/advancewars/Map.java

    r99433bb rc3ad11c  
    6262                                        Unit u = grid[x][y].currentUnit;
    6363                                        //p.println(u.type);
     64                                        //we also need to save the owner of the unit
    6465                                        p.println(u.location.x+","+u.location.y);
    6566                                }
  • src/com/medievaltech/unit/Artillery.java

    r99433bb rc3ad11c  
    33import java.util.List;
    44
    5 import android.graphics.Paint;
    65import android.graphics.Point;
    76
     
    98
    109public class Artillery extends Unit{
    11         public Artillery(Paint p)
     10        public Artillery(Player p)
    1211        {
    1312                super(p);
  • src/com/medievaltech/unit/Mech.java

    r99433bb rc3ad11c  
    33import java.util.List;
    44
    5 import android.graphics.Paint;
    65import android.graphics.Point;
    76
     
    98
    109public class Mech extends Unit{
    11         public Mech(Paint p)
     10        public Mech(Player p)
    1211        {
    1312                super(p);
  • src/com/medievaltech/unit/Recon.java

    r99433bb rc3ad11c  
    33import java.util.List;
    44
    5 import android.graphics.Paint;
    65import android.graphics.Point;
    76
     
    98
    109public class Recon extends Unit{
    11         public Recon(Paint p)
     10        public Recon(Player p)
    1211        {
    1312                super(p);
  • src/com/medievaltech/unit/SmTank.java

    r99433bb rc3ad11c  
    33import java.util.List;
    44
    5 import android.graphics.Paint;
    65import android.graphics.Point;
    76
     
    98
    109public class SmTank extends Unit{
    11         public SmTank(Paint p)
     10        public SmTank(Player p)
    1211        {
    1312                super(p);
  • src/com/medievaltech/unit/Soldier.java

    r99433bb rc3ad11c  
    33import java.util.List;
    44
    5 import android.graphics.Paint;
    65import android.graphics.Point;
    76
     
    98
    109public class Soldier extends Unit{
    11         public Soldier(Paint p)
     10        public Soldier(Player p)
    1211        {
    1312                super(p);
  • src/com/medievaltech/unit/Transport.java

    r99433bb rc3ad11c  
    11package com.medievaltech.unit;
    2 
    3 import android.graphics.Paint;
    42
    53public abstract class Transport extends Unit {
    64        public Unit storedUnit;
    75       
    8         public Transport(Paint p) {
     6        public Transport(Player p) {
    97                super(p);
    108        }
  • src/com/medievaltech/unit/Unit.java

    r99433bb rc3ad11c  
    88
    99public abstract class Unit {
    10         private Paint p;
    11        
    1210        public UnitType type;
    13         //public Player owner;
     11        public Player owner;
    1412       
    1513        public int maxHealth;
     
    2624        public Point location;
    2725       
    28         public Unit(Paint p)
     26        public Unit(Player p)
    2927        {
    30                 this.p = p;
     28                p.addUnit(this);
     29               
     30                owner = p;
    3131                maxHealth = 10;
    3232                currentHealth = 10;
    33                
    3433        }
    3534       
     
    8786       
    8887        public void draw(Canvas c, int x, int y) {
    89                 c.drawCircle(x, y, 20, p);
     88                c.drawCircle(x, y, 20, owner.getColor());
    9089        }
    9190}
Note: See TracChangeset for help on using the changeset viewer.