Subversion Repositories AndroidProjects

Rev

Rev 891 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
879 chris 1
package com.gebauz.burutaru.game;
2
 
3
public class ShipParameters
4
{
5
 
6
 
7
        // Constants========================================================================================
8
 
9
        public static final int MAX_SPEED_LEVEL = 5;
10
 
11
        public static final float SPEED_FACTORS[] =
12
        {
882 chris 13
                1.0f,
879 chris 14
                2.0f,
882 chris 15
                3.0f,
879 chris 16
                4.0f,
882 chris 17
                5.0f
879 chris 18
        };
19
 
20
        // Embedded Types===================================================================================
21
 
974 chris 22
        public enum WeaponType
23
        {
24
                PLASMA_SHOT,
25
                BEAM_SHOT,
26
                SPREAD_SHOT,
27
                NAPALM_SHOT,
28
        }
29
 
879 chris 30
        // Fields===========================================================================================
31
 
32
        private GameLogic mGameLogic = null;
33
        private int mSpeedLevel = 1;
891 chris 34
 
35
        private boolean mMissilesEnabled = false;
974 chris 36
        private boolean mBombEnabled = false;
37
 
38
        private WeaponType mWeaponType = WeaponType.PLASMA_SHOT;
879 chris 39
 
40
        // Methods==========================================================================================
41
 
42
        public ShipParameters(GameLogic gameLogic)
43
        {
44
                mGameLogic = gameLogic;
45
        }
46
 
47
        public void upgradeSpeed()
48
        {
49
                if (mSpeedLevel < MAX_SPEED_LEVEL)
50
                        mSpeedLevel++;
51
        }
52
 
891 chris 53
        public void upgradeMissile()
54
        {
55
                mMissilesEnabled = true;
56
        }
57
 
974 chris 58
        public void upgradeBomb()
59
        {
60
                mBombEnabled = true;
61
        }
62
 
63
        public void activateBeamShot()
64
        {
65
                mWeaponType = WeaponType.BEAM_SHOT;
66
        }
67
 
879 chris 68
        public float modifySpeed(float move)
69
        {              
70
                return move * SPEED_FACTORS[mSpeedLevel-1];
71
        }
72
 
73
        // Getters/Setters==================================================================================
74
 
75
        public int getSpeedLevel() { return mSpeedLevel; }
891 chris 76
        public boolean areMissilesEnabled() { return mMissilesEnabled; }
974 chris 77
        public boolean areBombsEnabled() { return mBombEnabled; }
879 chris 78
 
974 chris 79
        public WeaponType getWeaponType() { return mWeaponType; }      
879 chris 80
 
81
 
82
}