public void PaintWorld(WorldLayer layer)
        {
            if ((Hud.Game.MapMode == MapMode.WaypointMap) || (Hud.Game.MapMode == MapMode.ActMap) || (Hud.Game.MapMode == MapMode.Map))
            {
                return;
            }
            var actors = Hud.Game.Actors;

            foreach (var actor in actors)
            {
                if (actor.SummonerAcdDynamicId == Hud.Game.Me.SummonerId)
                {
                    switch (actor.SnoActor.Sno)
                    {
                    case (ActorSnoEnum)81230:     // light
                    case (ActorSnoEnum)81232:     // arcane
                    case (ActorSnoEnum)325807:
                    case (ActorSnoEnum)83024:
                        HydraDecorator.Paint(layer, actor, actor.FloorCoordinate.Offset(2f, 2f, 0), null);
                        break;

                    case (ActorSnoEnum)83959:     // mammoth
                        HydraDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                        break;

                    case (ActorSnoEnum)141402:
                    case (ActorSnoEnum)150025:
                    case (ActorSnoEnum)150024:
                    case (ActorSnoEnum)168815:
                    case (ActorSnoEnum)150026:
                    case (ActorSnoEnum)150027:
                        if (!Hud.Game.Me.Powers.BuffIsActive(208610, 0))
                        {
                            //if (Sentry == true) SentryDecorator.Paint(layer, actor, actor.FloorCoordinate, null); SentryMapDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                            if (SentryTimer == true)
                            {
                                SentryTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                            }
                        }
                        else
                        {
                            if (SentryTimer == true)
                            {
                                SentryWithCustomEngineeringTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                            }
                        }
                        break;

                    case (ActorSnoEnum)107705:
                    case (ActorSnoEnum)106584:
                    {
                        var skill = Hud.Game.Me.Powers.UsedSkills.Where(x => x.SnoPower.Sno == 106237).FirstOrDefault();
                        if (skill != null && SpiritWalkTimer == true)
                        {
                            if (skill.Rune == 1)
                            {
                                SpiritWalkWithJauntTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                            }
                            else
                            {
                                SpiritWalkTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                            }
                        }
                    }
                    break;

                    case (ActorSnoEnum)181880:
                        if (SpiritBarragePhantasm == true)
                        {
                            SpiritBarragePhantasmDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                        }
                        if (SpiritBarragePhantasmTimer == true)
                        {
                            SpiritBarragePhantasmTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                        }
                        break;
                    }
                }
                switch (actor.SnoActor.Sno)
                {
                case (ActorSnoEnum)141402:
                case (ActorSnoEnum)150025:
                case (ActorSnoEnum)150024:
                case (ActorSnoEnum)168815:
                    if (Sentry == true)
                    {
                        SentryMapDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)150026:
                case (ActorSnoEnum)150027:
                    if (Sentry == true)
                    {
                        SentryDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    SentryMapDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    break;

                case (ActorSnoEnum)6553:
                case (ActorSnoEnum)112697:
                case (ActorSnoEnum)112572:
                case (ActorSnoEnum)112585:
                case (ActorSnoEnum)112808:
                case (ActorSnoEnum)112560:
                    if (SlowTime == true)
                    {
                        SlowTimeDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (SlowTimeTimer == true)
                    {
                        SlowTimeTimerDecorator.Paint(layer, actor, actor.FloorCoordinate.Offset(0, 0, 5.2f), null);
                    }
                    break;

                case (ActorSnoEnum)341381:
                    if (BlackHole == true)
                    {
                        BlackHoleSupermassiveDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (BlackHoleTimer == true)
                    {
                        BlackHoleTimerDecorator.Paint(layer, actor, actor.FloorCoordinate.Offset(0, 0, 5.2f), null);
                    }
                    break;

                case (ActorSnoEnum)336410:
                case (ActorSnoEnum)341426:
                case (ActorSnoEnum)341411:
                case (ActorSnoEnum)341396:
                case (ActorSnoEnum)341441:
                    if (BlackHole == true)
                    {
                        BlackHoleDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (BlackHoleTimer == true)
                    {
                        BlackHoleTimerDecorator.Paint(layer, actor, actor.FloorCoordinate.Offset(0, 0, 5.2f), null);
                    }
                    break;

                case (ActorSnoEnum)348308:
                case (ActorSnoEnum)356987:
                case (ActorSnoEnum)358018:
                case (ActorSnoEnum)358653:
                    if (Piranhas == true)
                    {
                        PiranhasDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (PiranhasTimer == true)
                    {
                        PiranhasTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)357846:
                    if (Piranhas == true)
                    {
                        PiranhasDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (PiranhasTimer == true)
                    {
                        PiranhasPiranhadoTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)320135:
                case (ActorSnoEnum)320136:
                case (ActorSnoEnum)319583:
                case (ActorSnoEnum)319776:
                case (ActorSnoEnum)319337:
                    if (InnerSanctuary == true)
                    {
                        InnerSanctuaryDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (InnerSanctuaryTimer == true)
                    {
                        InnerSanctuaryTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)230674:
                    if (MarkedForDeath == true)
                    {
                        MarkedForDeathDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (MarkedForDeathTimer == true)
                    {
                        MarkedForDeathTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)69308:
                case (ActorSnoEnum)105958:
                case (ActorSnoEnum)105953:
                case (ActorSnoEnum)105957:
                case (ActorSnoEnum)105955:
                case (ActorSnoEnum)105956:
                    if (GraspoftheDead == true)
                    {
                        GraspoftheDeadDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (GraspoftheDeadTimer == true)
                    {
                        GraspoftheDeadTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)117574:
                    if (BigBadVoodoo == true)
                    {
                        BigBadVoodooWithJungleDrumsDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (BigBadVoodooTimer == true)
                    {
                        BigBadVoodooWithJungleDrumsTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)182276:
                case (ActorSnoEnum)182278:
                case (ActorSnoEnum)182271:
                case (ActorSnoEnum)182283:
                    if (BigBadVoodoo == true)
                    {
                        BigBadVoodooDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (BigBadVoodooTimer == true)
                    {
                        BigBadVoodooTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)217142:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_Pending_costDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_Pending_costTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)86790:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_PendingDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_PendingTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)217457:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_Pending_longerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_Pending_longerTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)92030:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_Pending_frostDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_Pending_frostTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)91440:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_Pending_RuneDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_Pending_RuneTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;

                case (ActorSnoEnum)215853:
                    if (Wizard_Meteor == true)
                    {
                        Wizard_Meteor_Pending_addDamageDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    if (Wizard_MeteorTimer == true)
                    {
                        Wizard_Meteor_Pending_addDamageTimerDecorator.Paint(layer, actor, actor.FloorCoordinate, null);
                    }
                    break;
                }
            }
        }
        public void PaintWorld(WorldLayer layer)
        {
            var Skills = Hud.Game.Actors;

            foreach (var skill in Skills)
            {
                switch (skill.SnoActor.Sno)
                {
                case ActorSnoEnum._gluttony_gascloud_proxy:
                    GhomTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._zoltunkulle_energytwister:
                    TornadoDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    TornadoTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._zoltunkulle_slowtime_bubble:
                    SlowTimeDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    SlowTimeTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._x1_unique_monster_generic_aoe_dot_fire_10foot:
                    FirePentagramDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    FirePentagramTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._x1_adria_geyser:
                case ActorSnoEnum._x1_adria_geyser_pending:
                    GeyserTethrysDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    GeyserTethrysTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._p4_lr_boss_sandmonster_turret:
                    SandmonsterTurretDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    SandmonsterTurretTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._p4_ratking_ratballmonster:
                    RatSwarmDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._x1_lr_boss_malletdemon_fallingrocks:
                case ActorSnoEnum._x1_pand_cellar_fallingrock:
                case ActorSnoEnum._a2dun_zolt_random_fallingrocks_c:
                    FallingRocksDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._morluspellcaster_meteor_pending:
                case ActorSnoEnum._morluspellcaster_meteor_impact:
                case ActorSnoEnum._morluspellcaster_meteor_afterburn:
                    MeteorDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._p2_westmarchbrute_leap_telegraph:
                case ActorSnoEnum._x1_westmarchbrute_b_leap_telegraph:
                    BloodmawDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._x1_westmarchbrute_leap_telegraph:
                    BruteLeapDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._skeletonmage_fire_groundpool:
                    SmolderingPoolDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case ActorSnoEnum._x1_bog_bear_trap:
                case ActorSnoEnum._x1_bog_bear_trap_projectile_lobbed:
                    BogBearTrapDecorator.Paint(layer, skill, skill.FloorCoordinate, "夹子");
                    break;

                case ActorSnoEnum._x1_monsteraffix_teleportmines:
                    WormholeDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;
                }
            }
        }
Esempio n. 3
0
        public void PaintWorld(WorldLayer layer)
        {
            var Skills = Hud.Game.Actors;

            foreach (var skill in Skills)
            {
                switch (skill.SnoActor.Sno)
                {
                case 93837:
                    GhomTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 139741:
                    TornadoDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    TornadoTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 185924:
                    SlowTimeDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    SlowTimeTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 359693:
                    FirePentagramDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    FirePentagramTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 315366:
                case 315362:
                    GeyserTethrysDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    GeyserTethrysTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 434201:
                    SandmonsterTurretDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    SandmonsterTurretTimerDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 427170:
                    RatSwarmDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 368453:
                case 374732:
                case 3026:
                    FallingRocksDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 159369:
                case 159368:
                case 159367:
                    MeteorDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 428962:
                case 428938:
                    BloodmawDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 289827:
                    BruteLeapDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 432:
                    SmolderingPoolDecorator.Paint(layer, skill, skill.FloorCoordinate, string.Empty);
                    break;

                case 237062:
                case 284752:
                    BogBearTrapDecorator.Paint(layer, skill, skill.FloorCoordinate, "夹子");
                    break;
                }
            }
        }