Exemplo n.º 1
0
 public ElekiFangSub(IAudioEngine s, SceneBattle p, bool up, ElekiFang ef)
     : base(s, p, ef.position.X, ef.position.Y + (up ? -1 : 1))
 {
     this.ef = ef;
     this.up = up;
     if (this.position.X < 0)
     {
         this.position.X = 0;
     }
     if (this.position.X > 5)
     {
         this.position.X = 5;
     }
     if (this.position.Y < 0)
     {
         this.position.Y = 0;
         this.downprint  = true;
     }
     if (this.position.Y <= 2)
     {
         return;
     }
     this.position.Y = 2;
     this.upprint    = true;
 }
Exemplo n.º 2
0
        public override void Action(CharacterBase character, SceneBattle battle)
        {
            if (character.waittime < 5)
            {
                character.animationpoint = new Point(4, 0);
            }
            else if (character.waittime < 15)
            {
                character.animationpoint = new Point(5, 0);
            }
            else if (character.waittime < 16)
            {
                character.animationpoint = new Point(6, 0);
            }
            else if (character.waittime < 21)
            {
                character.animationpoint = new Point(5, 0);
            }
            else if (character.waittime == 40)
            {
                base.Action(character, battle);
            }
            if (character.waittime != 16)
            {
                return;
            }
            this.sound.PlaySE(SoundEffect.thunder);
            int       num       = this.power + this.pluspower;
            ElekiFang elekiFang = new ElekiFang(this.sound, battle, character.position.X + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 1, this.element, false);

            elekiFang.BadStatusSet(CharacterBase.BADSTATUS.paralyze, 180);
            character.parent.attacks.Add(this.Paralyze(elekiFang));
        }
Exemplo n.º 3
0
        public override void Action(CharacterBase character, SceneBattle battle)
        {
            if (this.screen == null)
            {
                this.screen = new ScreenBlack(this.sound, battle, new Vector2(), new Point(), this.element, 0, false);
                battle.effects.Add(screen);
                this.position = new Point(character.union == Panel.COLOR.red ? 1 : 4, 2);
            }
            if (!this.BlackOut(character, battle, this.name, this.Power(character).ToString()))
            {
                return;
            }
            switch (character.waittime)
            {
            case 1:
                character.animationpoint.X = 1;
                break;

            case 3:
                character.animationpoint.X = 2;
                break;

            case 5:
                character.animationpoint.X = 3;
                break;

            case 7:
                character.animationpoint.X = -1;
                break;
            }
            if (character.waittime % 2 == 0)
            {
                this.eye = !this.eye;
            }
            int num = 30;

            if (character.waittime == 44)
            {
                this.sound.PlaySE(SoundEffect.pikin);
            }
            if (character.waittime == 44 + num)
            {
                battle.effects.Add(new Charge(this.sound, battle, this.position.X, this.position.Y));
            }
            if (character.waittime > 44 + num + 50)
            {
                this.FlameControl(1);
                if (this.count < 10)
                {
                    if (this.frame > 20)
                    {
                        this.frame = 0;
                        this.sound.PlaySE(SoundEffect.thunder);
                        AttackBase a = new ElekiFang(this.sound, battle, character.union == Panel.COLOR.red ? 2 : 3, 1, character.union, this.Power(character), 2, this.element, this.count % 2 == 0);
                        a.knock = true;
                        battle.attacks.Add(this.Paralyze(a));
                        ++this.count;
                    }
                }
                else if (this.frame > 60)
                {
                    switch (this.frame)
                    {
                    case 61:
                        character.animationpoint.X = 3;
                        break;

                    case 63:
                        character.animationpoint.X = 2;
                        break;

                    case 65:
                        character.animationpoint.X = 1;
                        break;

                    case 67:
                        character.animationpoint.X = 0;
                        break;
                    }
                    if (this.frame > 80)
                    {
                        if (!this.screen.end)
                        {
                            this.screen.end = true;
                        }
                        if (this.BlackOutEnd(character, battle))
                        {
                            base.Action(character, battle);
                        }
                    }
                }
            }
        }
Exemplo n.º 4
0
        protected override void Moving()
        {
            this.neutlal = this.motion == RayJune.MOTION.neutral;
            switch (this.motion)
            {
            case RayJune.MOTION.neutral:
                if (this.moveflame)
                {
                    this.animationpoint = this.AnimeNeutral(this.frame);
                    if (this.frame >= 4)
                    {
                        this.frame = 0;
                        ++this.roopneutral;
                        if (this.roopneutral >= 2 && this.parent.nowscene != SceneBattle.BATTLESCENE.end)
                        {
                            this.roopneutral = 0;
                            if (this.roopmove >= this.moveroop && !this.badstatus[4])
                            {
                                this.speed         = 4;
                                this.motion        = RayJune.MOTION.attack;
                                this.counterTiming = true;
                            }
                            else
                            {
                                this.motion = RayJune.MOTION.move;
                            }
                        }
                    }
                    break;
                }
                break;

            case RayJune.MOTION.move:
                ++this.roopmove;
                this.motion = RayJune.MOTION.neutral;
                this.MoveRandom(false, false);
                if (this.position == this.positionre)
                {
                    this.motion      = RayJune.MOTION.neutral;
                    this.frame       = 0;
                    this.roopneutral = 0;
                    break;
                }
                this.parent.effects.Add(new MoveEnemy(this.sound, this.parent, this.position.X, this.position.Y));
                this.position = this.positionre;
                this.PositionDirectSet();
                this.frame       = 0;
                this.roopneutral = 0;
                break;

            case RayJune.MOTION.attack:
                this.animationpoint = this.AnimeAttack(this.frame);
                if (this.moveflame)
                {
                    if (this.frame == 1)
                    {
                        this.parent.attacks.Add(new Dummy(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y - 1, this.union, new Point(6, 0), 20, true));
                        this.parent.attacks.Add(new Dummy(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, new Point(0, 0), 20, true));
                        this.parent.attacks.Add(new Dummy(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y + 1, this.union, new Point(6, 0), 20, true));
                    }
                    if (this.frame == 11)
                    {
                        this.sound.PlaySE(SoundEffect.thunder);
                        ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, false);
                        elekiFang.positionDirect.Y += 10f;
                        this.parent.attacks.Add(elekiFang);
                        this.counterTiming = false;
                    }
                    if (this.version == 0)
                    {
                        int num = 6;
                        if (this.frame == 11 + num)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, true);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 2)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, false);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 3)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, true);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 4)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, false);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 5)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, true);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 6)
                        {
                            this.sound.PlaySE(SoundEffect.thunder);
                            ElekiFang elekiFang = new ElekiFang(this.sound, this.parent, this.position.X + this.UnionRebirth, this.position.Y, this.union, this.Power, 1, this.element, false);
                            elekiFang.positionDirect.Y += 10f;
                            this.parent.attacks.Add(elekiFang);
                        }
                        if (this.frame == 11 + num * 5)
                        {
                            this.frame       = 0;
                            this.roopmove    = 0;
                            this.roopneutral = 0;
                            this.speed       = 6;
                            this.motion      = RayJune.MOTION.neutral;
                        }
                    }
                    if (this.frame >= 30 && this.version > 0)
                    {
                        this.frame       = 0;
                        this.roopmove    = 0;
                        this.roopneutral = 0;
                        this.speed       = this.nspeed;
                        this.motion      = RayJune.MOTION.move;
                    }
                    break;
                }
                break;
            }
            this.FlameControl();
            this.MoveAftar();
        }