Inheritance: FContainer
Beispiel #1
0
    public void ShowTowerHitForTower(MTower tower)
    {
        FSprite towerHit = new FSprite("TowerHit.png");
        towerHit.shader = FShader.Additive;
        towerHit.color = red;

        AddChild(towerHit);
        towerHit.x = tower.x;
        towerHit.y = tower.y;

        Go.to (towerHit,0.2f,new TweenConfig().floatProp("alpha", 0.0f).onComplete(HandleTowerHitComplete));
    }
Beispiel #2
0
    public void ShowTowerExplosionForTower(MTower tower)
    {
        MExplosion explosion = new MExplosion(false);
        explosion.x = tower.x;
        explosion.y = tower.y;
        explosion.rotation = RXRandom.Float()*360.0f;
        //explosion.shader = FShader.Additive;
        explosion.color = tower.player.color.addColor; //not that it's not additive but uses addColor

        AddChildAtIndex(explosion,0);
    }
Beispiel #3
0
 public void Destroy()
 {
     attackTarget = null;
     attackTower = null;
     this.isEnabled = false;
 }
Beispiel #4
0
    public void Start(MPlayer player)
    {
        this.player = player;

        hasTarget = false;
        target = new Vector2(0,0);
        velocity = new Vector2(0,0);
        attackTarget = null;
        attackTower = null;
        isAttacking = false;
        isAttackingTower = false;
        attackFrame = 0;
        blinkFrame = 0;

        if(player.leapLevel < 1)
        {
            beastType = MBeastType.A;
        }
        else if(player.leapLevel < 2)
        {
            beastType = MBeastType.B;
        }
        else
        {
            beastType = MBeastType.C;
        }

        UpdateStats();

        _advanceCount = 0;

        _elementSet = _elementSets[player.color.index*MBeastType.beastTypes.Length + beastType.index];
        sprite.element = _elementSet.walkElements[0];
        sprite.color = MGame.colorWhite;

        this.scale = 0.0f;

        this.isEnabled = true;
    }
Beispiel #5
0
    private void CreateTowers()
    {
        float angle = 180.0f;

        foreach(MPlayer player in _players)
        {
            MTower tower = new MTower(player);

            player.angle = angle;
            player.tower = tower;

            tower.x = Mathf.Sin (angle*RXMath.DTOR) * MConfig.TOWER_CREATION_RADIUS;
            tower.y = Mathf.Cos (angle*RXMath.DTOR) * MConfig.TOWER_CREATION_RADIUS;

            container.AddChild(tower);
            _towers.Add (tower);

            angle += 360.0f/(float)_players.Count;
        }
    }