Example #1
0
 public static ItemAbstract newItem(string type, int tier)
 {
     if (WeaponItem.isWeaponType(type))
     {
         return(new WeaponItem(type, tier));
     }
     else if (EngineItem.isEngineType(type))
     {
         return(new EngineItem(type, tier));
     }
     return(new WeaponItem(WeaponItem.WeaponType.Error, 0));
 }
Example #2
0
 public void reloadItems()
 {
     print(engines + " " + weapons + " " + engineBlueprints + " " + weaponBlueprints);
     inventoryDisplay.GetComponent <ItemListHandler>().removeAllItems();
     foreach (string key in inventory.Keys)
     {
         if (inventory[key] <= 0)
         {
             continue;
         }
         ItemAbstract item = ItemDefinitions.stringToItem(key);
         print(key + "->" + item.getType() + ":" + item.getTier());
         if (item.getType() == "Error")
         {
             continue;
         }
         if (WeaponItem.isWeaponType(item.getType()))
         {
             if (item.getTier() < 4)
             {
                 if (weapons)
                 {
                     addNumItems(item, inventory[key]);
                 }
             }
             else
             {
                 if (weaponBlueprints)
                 {
                     addNumItems(item, inventory[key]);
                 }
             }
         }
         else if (EngineItem.isEngineType(item.getType()))
         {
             if (item.getTier() < 4)
             {
                 if (engines)
                 {
                     addNumItems(item, inventory[key]);
                 }
             }
             else
             {
                 if (engineBlueprints)
                 {
                     addNumItems(item, inventory[key]);
                 }
             }
         }
     }
 }
Example #3
0
 // used for indexing item quantities
 public static int itemToInt(ItemAbstract item)
 {
     if (WeaponItem.isWeaponType(item.getType()))
     {
         WeaponItem itemW = (WeaponItem)item;
         if (itemW.type == WeaponItem.WeaponType.Error)
         {
             return(0);
         }
         return((6 * (int)itemW.type) - 5 + itemW.tier);
     }
     else if (EngineItem.isEngineType(item.getType()))
     {
         EngineItem itemE = (EngineItem)item;
         if (itemE.type == EngineItem.EngineType.Error)
         {
             return(0);
         }
         return((6 * (int)itemE.type) - 5 + itemE.tier + WeaponItem.numWeaponTypes);
     }
     return(0);
 }
Example #4
0
    public void applyBuff(ItemAbstract item)
    {
        if (!EngineItem.isEngineType(item.getType()))
        {
            return;
        }

        EngineItem itemE = (EngineItem)item;

        switch (itemE.type)
        {
        case EngineItem.EngineType.Spinjet:
            break;

        case EngineItem.EngineType.Standard:
            break;

        case EngineItem.EngineType.Thruster:
            break;
        }
        //process item
    }
Example #5
0
    // Use this for initialization
    void Start()
    {
        //Camera camera = Camera.main;
        //camera.orthographicSize = 640 / Screen.width * Screen.height / 2;
        if (shipName == "")
        {
            shipName = ShipDefinitions.generateName();
        }
        GameObject parent = GameObject.Find("GameLogic").GetComponent <PrefabHost>().getEmptyObject();

        this.health = GameObject.Find("GameLogic").GetComponent <PrefabHost>().getHealthObject();
        this.ammo   = GameObject.Find("GameLogic").GetComponent <PrefabHost>().getAmmoObject();
        this.text   = GameObject.Find("GameLogic").GetComponent <PrefabHost>().getLabelObject();
        health.transform.SetParent(parent.transform);
        ammo.transform.SetParent(parent.transform);
        text.transform.SetParent(parent.transform);
        transform.SetParent(parent.transform);
        text.GetComponent <ShipLabel>().setText(shipName);
        health.GetComponent <HealthBar>().setTarget(gameObject);
        ammo.GetComponent <AmmoBar>().setTarget(gameObject);
        text.GetComponent <ShipLabel>().setTarget(gameObject);
        if (inventory == null)
        {
            inventory = new List <ItemAbstract>();
        }
        GameObject engineObj;

        if (engType == ShipDefinitions.EngineType.Engine1)
        {
            engineObj = GameObject.Find("GameLogic").GetComponent <PrefabHost>()
                        .getEngineLvl1Object();
        }
        else
        {
            engineObj = GameObject.Find("GameLogic").GetComponent <PrefabHost>()
                        .getEngineLvl2Object();
        }
        engineObj.transform.parent     = gameObject.transform;
        engineObj.transform.position   = gameObject.transform.position;
        engineObj.transform.localScale = new Vector3(1.5f, 1.5f, 0);

        engine = engineObj.GetComponent <EngineModule>();
        switch (weapType)
        {
        case ShipDefinitions.WeaponType.Crown:
            weapon = gameObject.AddComponent <CrownMod>();
            break;

        case ShipDefinitions.WeaponType.Laser:
            weapon = gameObject.AddComponent <PewPewLaserMod>();
            break;

        case ShipDefinitions.WeaponType.Missile:
            weapon = gameObject.AddComponent <MissileMod>();
            break;

        case ShipDefinitions.WeaponType.Flame:
            weapon = gameObject.AddComponent <FlameMod>();
            break;

        default:
            weapon = gameObject.AddComponent <DummyFiringMod>();
            break;
        }

        foreach (ItemAbstract item in inventory)
        {
            if (WeaponItem.isWeaponType(item.getType()))
            {
                weapon.applyBuff(item);
            }
            else if (EngineItem.isEngineType(item.getType()))
            {
                engine.applyBuff(item);
            }
        }

        ShipDefinitions.Faction faction = ShipDefinitions.stringToFaction(gameObject.tag);
        if (faction == ShipDefinitions.Faction.Enemy)
        {
            if (shipType == ShipDefinitions.ShipType.Ruby)
            {
                SpriteRenderer spr = gameObject.GetComponent <SpriteRenderer>();
                if (spr == null)
                {
                    spr = gameObject.AddComponent <SpriteRenderer>();
                }
                spr.sprite = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                             shipRubyPirateSprite;
                gameObject.AddComponent <Animator>().runtimeAnimatorController
                    = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                      shipRubyPirateAnimator;
            }
            else
            {
                SpriteRenderer spr = gameObject.GetComponent <SpriteRenderer>();
                if (spr == null)
                {
                    spr = gameObject.AddComponent <SpriteRenderer>();
                }
                spr.sprite = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                             shipPeacockPirateSprite;
                gameObject.AddComponent <Animator>().runtimeAnimatorController
                    = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                      shipPeacockPirateAnimator;
            }
        }
        else
        {
            if (shipType == ShipDefinitions.ShipType.Ruby)
            {
                SpriteRenderer spr = gameObject.GetComponent <SpriteRenderer>();
                if (spr == null)
                {
                    spr = gameObject.AddComponent <SpriteRenderer>();
                }
                spr.sprite = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                             shipRubySprite;
                gameObject.AddComponent <Animator>().runtimeAnimatorController
                    = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                      shipRubyAnimator;
            }
            else
            {
                SpriteRenderer spr = gameObject.GetComponent <SpriteRenderer>();
                if (spr == null)
                {
                    spr = gameObject.AddComponent <SpriteRenderer>();
                }
                spr.sprite = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                             shipPeacockSprite;
                gameObject.AddComponent <Animator>().runtimeAnimatorController
                    = GameObject.Find("GameLogic").GetComponent <PrefabHost>().
                      shipPeacockAnimator;
            }
        }

        gameObject.AddComponent <BoxCollider2D>();
        gameObject.GetComponent <BoxCollider2D>().isTrigger = true;

        //string id = shipName.Substring(shipName.Length - 4);
        parent.name     = "Parent-" + shipName;
        gameObject.name = "Ship-" + shipName;
        health.name     = "Health-" + shipName;
        ammo.name       = "Ammo-" + shipName;
        text.name       = "Text-" + shipName;
        initialized     = true;
    }
Example #6
0
    // getImage will return the appropriate icon for a given item
    public Sprite getImage(ItemAbstract item)
    {
        Sprite img = defaultSprite;

        if (WeaponItem.isWeaponType(item.getType()))
        {
            WeaponItem itemW = (WeaponItem)item;
            if (itemW.type == WeaponItem.WeaponType.FlameModAmmoCap ||
                itemW.type == WeaponItem.WeaponType.FlameModDamage ||
                itemW.type == WeaponItem.WeaponType.FlameModFireRate ||
                itemW.type == WeaponItem.WeaponType.FlameModRange ||
                itemW.type == WeaponItem.WeaponType.FlameModRechargeRate ||
                itemW.type == WeaponItem.WeaponType.FlameModSpeed ||
                itemW.type == WeaponItem.WeaponType.FlameModSpread ||
                itemW.type == WeaponItem.WeaponType.FlameModFireRate ||
                itemW.type == WeaponItem.WeaponType.FlameModRange ||
                itemW.type == WeaponItem.WeaponType.FlameModRechargeRate ||
                itemW.type == WeaponItem.WeaponType.FlameModSpeed ||
                itemW.type == WeaponItem.WeaponType.FlameModSpread)
            {
                switch (itemW.tier)
                {
                case 1:
                    img = fireSpriteLvl1;
                    break;

                case 2:
                    img = fireSpriteLvl2;
                    break;

                case 3:
                    img = fireSpriteLvl3;
                    break;

                case 4:
                    img = blueprintFireSpriteLvl1;
                    break;

                case 5:
                    img = blueprintFireSpriteLvl2;
                    break;

                case 6:
                    img = blueprintFireSpriteLvl3;
                    break;
                }
            }
            else if (itemW.type == WeaponItem.WeaponType.LaserModAmmoCap ||
                     itemW.type == WeaponItem.WeaponType.LaserModDamage ||
                     itemW.type == WeaponItem.WeaponType.LaserModFireRate ||
                     itemW.type == WeaponItem.WeaponType.LaserModRange ||
                     itemW.type == WeaponItem.WeaponType.LaserModRechargeRate ||
                     itemW.type == WeaponItem.WeaponType.LaserModSpeed)
            {
                switch (itemW.tier)
                {
                case 1:
                    img = laserSpriteLvl1;
                    break;

                case 2:
                    img = laserSpriteLvl2;
                    break;

                case 3:
                    img = laserSpriteLvl3;
                    break;

                case 4:
                    img = blueprintLaserSpriteLvl1;
                    break;

                case 5:
                    img = blueprintLaserSpriteLvl2;
                    break;

                case 6:
                    img = blueprintLaserSpriteLvl3;
                    break;
                }
            }
            else if (itemW.type == WeaponItem.WeaponType.CrownModAmmoCap ||
                     itemW.type == WeaponItem.WeaponType.CrownModDamage ||
                     itemW.type == WeaponItem.WeaponType.CrownModRange ||
                     itemW.type == WeaponItem.WeaponType.CrownModRechargeRate)
            {
                switch (itemW.tier)
                {
                case 1:
                    img = crownSpriteLvl1;
                    break;

                case 2:
                    img = crownSpriteLvl2;
                    break;

                case 3:
                    img = crownSpriteLvl3;
                    break;

                case 4:
                    img = blueprintCrownSpriteLvl1;
                    break;

                case 5:
                    img = blueprintCrownSpriteLvl2;
                    break;

                case 6:
                    img = blueprintCrownSpriteLvl3;
                    break;
                }
            }
            else if (itemW.type == WeaponItem.WeaponType.MissileModAmmoCap ||
                     itemW.type == WeaponItem.WeaponType.MissileModDamage ||
                     itemW.type == WeaponItem.WeaponType.MissileModFireRate ||
                     itemW.type == WeaponItem.WeaponType.MissileModRange ||
                     itemW.type == WeaponItem.WeaponType.MissileModRechargeRate ||
                     itemW.type == WeaponItem.WeaponType.MissileModSpeed)
            {
                switch (itemW.tier)
                {
                case 1:
                    img = missileSpriteLvl1;
                    break;

                case 2:
                    img = missileSpriteLvl2;
                    break;

                case 3:
                    img = missileSpriteLvl3;
                    break;

                case 4:
                    img = blueprintMissileSpriteLvl1;
                    break;

                case 5:
                    img = blueprintMissileSpriteLvl2;
                    break;

                case 6:
                    img = blueprintMissileSpriteLvl3;
                    break;
                }
            }
            else
            {
                img = defaultSprite;
            }
        }
        else
        if (EngineItem.isEngineType(item.getType()))
        {
            EngineItem itemE = (EngineItem)item;
            if (itemE.type == EngineItem.EngineType.Standard)
            {
                switch (itemE.tier)
                {
                case 1:
                    img = engineStandardLvl1;
                    break;

                case 2:
                    img = engineStandardLvl2;
                    break;

                case 3:
                    img = engineStandardLvl3;
                    break;

                case 4:
                    img = blueprintEngineStandardLvl1;
                    break;

                case 5:
                    img = blueprintEngineStandardLvl2;
                    break;

                case 6:
                    img = blueprintEngineStandardLvl3;
                    break;
                }
            }
            else if (itemE.type == EngineItem.EngineType.Spinjet)
            {
                switch (itemE.tier)
                {
                case 1:
                    img = engineSpinjetLvl1;
                    break;

                case 2:
                    img = engineSpinjetLvl2;
                    break;

                case 3:
                    img = engineSpinjetLvl3;
                    break;

                case 4:
                    img = blueprintEngineSpinjetLvl1;
                    break;

                case 5:
                    img = blueprintEngineSpinjetLvl2;
                    break;

                case 6:
                    img = blueprintEngineSpinjetLvl3;
                    break;
                }
            }
            else if (itemE.type == EngineItem.EngineType.Thruster)
            {
                switch (itemE.tier)
                {
                case 1:
                    img = engineThrusterLvl1;
                    break;

                case 2:
                    img = engineThrusterLvl2;
                    break;

                case 3:
                    img = engineThrusterLvl3;
                    break;

                case 4:
                    img = blueprintEngineThrusterLvl1;
                    break;

                case 5:
                    img = blueprintEngineThrusterLvl2;
                    break;

                case 6:
                    img = blueprintEngineThrusterLvl3;
                    break;
                }
            }
        }
        return(img);
    }