コード例 #1
0
    /**
     * @param initHealth
     * @param initShield
     * @param initEnergy
     * @param rechargeType
     * @param weaponType
     * @param ammoType
     */
    public bool InitEnemy(int initLifes,
                          float initHealth,
                          float initShield,
                          float initEnergy,
                          CoreSystems.Energy.eRechargeTypes rechargeType,
                          WeaponSystems.eWeaponTypes weaponType,
                          Weapon.eAmmoTypes ammoType,
                          bool autoShoting)
    {
        bool ret = true;

        ret = nesCoreSys.Init(initLifes, initHealth, initShield, initEnergy, rechargeType) && ret;
        ret = nesWeapSys.Init(weaponType, ammoType, autoShoting) && ret;

        return(ret);
    }
コード例 #2
0
    //==================================================================================================

    /**
     * @param initHealth
     * @param initShield
     * @param initEnergy
     * @param rechargeType
     * @param weaponType
     * @param ammoType
     */
    public bool InitShip(int initLifes,
                         float initHealth,
                         float initShield,
                         float initEnergy,
                         CoreSystems.Energy.eRechargeTypes rechargeType,
                         WeaponSystems.eWeaponTypes weaponType,
                         Weapon.eAmmoTypes ammoType)
    {
        bool ret = true;

        ret = nesCoreSys.Init(initLifes, initHealth, initShield, initEnergy, rechargeType) && ret;
        ret = nesWeapSys.Init(weaponType, ammoType, false) && ret;

        ret = SetMoveStyle(false) && ret;

        nesCoreSys.collisionDamageRate = 1000.0f;

        return(ret);
    }
コード例 #3
0
    //==================================================================================================

    /**
     * @param enType
     * @param enWave
     *
     */
    public bool InitEnemy(eScoreObjectTypes enType, int enWave)
    {
        bool initialized = true;

        switch (enType)
        {
        case eScoreObjectTypes.EnemyUWingBasic:
        {
            float tmpMove = (enWave / 5) * 0.05f;

            float tmpHeal = 40.0f;
            float tmpEner = 100.0f;

            CoreSystems.Energy.eRechargeTypes tmpERec = CoreSystems.Energy.eRechargeTypes.NoRecharge;
            WeaponSystems.eWeaponTypes        tmpWeap = WeaponSystems.eWeaponTypes.NoWeapon;
            Weapon.eAmmoTypes tmpAmmo = Weapon.eAmmoTypes.NoShoting;

            bool tmpAuto = false;

            if (enWave >= 10)
            {
                tmpHeal = 60.0f;
                tmpERec = CoreSystems.Energy.eRechargeTypes.VerySlow;
                tmpWeap = WeaponSystems.eWeaponTypes.ForwardBasic;
                tmpAmmo = Weapon.eAmmoTypes.Toy;
                tmpAuto = true;
            }
            if (enWave >= 25)
            {
                tmpHeal = 80.0f;
                tmpERec = CoreSystems.Energy.eRechargeTypes.Slow;
                tmpAmmo = Weapon.eAmmoTypes.Basic;
            }

            // init lifes, health, shield, energy and weapons
            initialized = InitEnemy(1, tmpHeal, 0.0f, tmpEner, tmpERec, tmpWeap, tmpAmmo, tmpAuto);
            // init engines
            initialized = nesEngiSys.Init((2.0f + tmpMove), (1.0f + tmpMove), 0.0f, false) && initialized;
        }
        break;

        case eScoreObjectTypes.EnemyUWingMedium:
        {
            float tmpMove = (enWave / 5) * 0.1f;

            float tmpHeal = 60.0f;
            float tmpEner = 100.0f;

            CoreSystems.Energy.eRechargeTypes tmpERec = CoreSystems.Energy.eRechargeTypes.VerySlow;
            WeaponSystems.eWeaponTypes        tmpWeap = WeaponSystems.eWeaponTypes.ForwardBasic;
            Weapon.eAmmoTypes tmpAmmo = Weapon.eAmmoTypes.Toy;

            bool tmpAuto = true;

            if (enWave >= 5)
            {
                tmpAmmo = Weapon.eAmmoTypes.Basic;
            }
            if (enWave >= 10)
            {
                tmpHeal = 80.0f;
                tmpERec = CoreSystems.Energy.eRechargeTypes.Slow;
                tmpWeap = WeaponSystems.eWeaponTypes.ForwardBetter;
                tmpAmmo = Weapon.eAmmoTypes.Toy;
            }
            if (enWave >= 20)
            {
                tmpAmmo = Weapon.eAmmoTypes.Basic;
            }
            if (enWave >= 30)
            {
                tmpHeal = 100.0f;
                tmpERec = CoreSystems.Energy.eRechargeTypes.Medium;
                tmpWeap = WeaponSystems.eWeaponTypes.ForwardAdvanced;
                tmpAmmo = Weapon.eAmmoTypes.Toy;
            }
            if (enWave >= 50)
            {
                tmpAmmo = Weapon.eAmmoTypes.Basic;
            }

            // init lifes, health, shield, energy and weapons
            initialized = InitEnemy(1, tmpHeal, 0.0f, tmpEner, tmpERec, tmpWeap, tmpAmmo, tmpAuto);
            // init engines
            initialized = nesEngiSys.Init((3.0f + tmpMove), (2.0f + tmpMove), 0.0f, false) && initialized;
        }
        break;


        default:
            Debug.LogWarning("ENEMY SETT >> Unknown enemy type");
            initialized = false;
            break;
        }

        if (initialized)
        {
            scoreType = enType;
        }

        nesCoreSys.collisionDamageRate = 1000.0f;

        return(initialized);
    }