Example #1
0
 private void AddTriggersToEvents()
 {
     JustBeforeFirstAction    += () => Active.Turn.CharacterThatTookActionInTurn = this;
     JustBeforeFirstAction    += () => Console.GameLog($"ACTION TAKEN: {this}");
     HealthPoints.StatChanged += RemoveIfDead;
     AfterAttack += (targetCharacter, damage) =>
                    Console.Log(
         $"{this.FormattedFirstName()} atakuje {targetCharacter.FormattedFirstName()}, zadając <color=red><b>{damage.Value}</b></color> obrażeń!");
     AfterAttack += (targetCharacter, damage) =>
                    AnimationPlayer.Add(new Tilt(targetCharacter.CharacterObject.transform));
     AfterAttack += (targetCharacter, damage) =>
                    AnimationPlayer.Add(new ShowInfo(targetCharacter.CharacterObject.transform, damage.Value.ToString(),
                                                     Color.red));
     AfterHeal += (targetCharacter, valueHealed) =>
                  AnimationPlayer.Add(new ShowInfo(targetCharacter.CharacterObject.transform, valueHealed.ToString(),
                                                   Color.blue));
     HealthPoints.StatChanged += () =>
     {
         if (Active.CharacterOnMap == this)
         {
             MainHPBar.Instance.UpdateHPAmount(this);
         }
     };
     OnDeath   += () => Effects.Clear();
     AfterHeal += (targetCharacter, value) =>
                  Console.Log(targetCharacter != this
                                 ? $"{this.FormattedFirstName()} ulecza {targetCharacter.FormattedFirstName()} o <color=blue><b>{value}</b></color> punktów życia!"
                                 : $"{this.FormattedFirstName()} ulecza się o <color=blue><b>{value}</b></color> punktów życia!");
 }
Example #2
0
 private void OnGameStarted()
 {
     DisplayLevel(0);
     DisplayClearedLines(0);
     DisplayScore(0);
     Effects.Clear();
     _gameStartTime = DateTime.Now;
     ElapsedTime    = TimeSpan.FromSeconds(0);
     _timer.Start();
 }
Example #3
0
        public void SetMonsterGroup(IEnumerable <Monster> group)
        {
            Effects.Clear();
            foreach (var monster in group)
            {
                Effects.Add(new EffectDice((short)EffectsEnum.Effect_SoulStoneSummon, (short)monster.Template.Id, (short)monster.Grade.GradeId, 0, new EffectBase()));
            }

            Invalidate();
        }
 public override void UnloadContent()
 {
     foreach (var fx in Effects.Values)
     {
         fx.Dispose();
     }
     Effects.Clear();
     //WaveOutDevice.Dispose();
     base.UnloadContent();
 }
        protected internal override void UnloadContent()
        {
            particleEffectSheet = null;
            lightSheet          = null;
            lightSourceMap.Dispose();

            LightSources.Clear();
            LightSources = null;
            Effects.Clear();
            Effects = null;
        }
Example #6
0
        public void LoadEffectsFromNameList(IEnumerable <string> effectNames)
        {
            Effects.Clear();

            foreach (var effectName in effectNames)
            {
                Effects.Add(new Effect {
                    Name = effectName
                });
            }

            Effects = Effects.OrderBy(eff => eff.Name).ToList();
        }
Example #7
0
 public void ClearEffects()
 {
     if (Effects == null)
     {
         Effects = new List <Effect>();
     }
     Effects.Clear();
     if (Stats == null)
     {
         return;
     }
     Stats.Status = Constants.StatusTypes.None;
 }
Example #8
0
 /// <summary>
 /// Removes all light objects.
 /// </summary>
 public void Clear()
 {
     WaterPlanes.Clear();
     Objects.Clear();
     NPCs.Clear();
     Buildings.Clear();
     Sounds.Clear();
     Effects.Clear();
     Animations.Clear();
     MonsterSpawns.Clear();
     WarpPoints.Clear();
     CollisionObjects.Clear();
     EventObjects.Clear();
 }
        public void LoadEffects()
        {
            // Effects collection is not rebuild.
            Effects.Clear();

            var orchestrator = OrchestratorCollection.GetOrchestratorForDevice(UserSettings.Settings.ActiveDevice);
            var effects      = orchestrator.GetCustomEffectAsEffects();

            effects.AddRange(UserSettings.Settings.ActiveDevice.Effects);

            foreach (var effect in effects)
            {
                Effects.Add(effect);
            }
        }
Example #10
0
 public void Clear()
 {
     IsUpdate  = false;
     VoiceType = PlayerInformation.Info.PType;
     BehType   = BehaviorType.None;
     Targets.Clear();
     Damages.Clear();
     Abnormals.Clear();
     IsHit.Clear();
     //IsDeath.Clear();
     KillList.Clear();
     Effects.Clear();
     Sounds.Clear();
     Voices.Clear();
     Messages.Clear();
 }
Example #11
0
 protected override void Died()
 {
     if (!transformed)
     {
         Effects.Clear();
         audioSource.clip = explosionChargeSound;
         audioSource.Play();
         Alive = false;
         slowEffect.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear);
         anim.speed = 0;
         explosionAnim.SetTrigger("Explode");
     }
     else
     {
         base.Died();
         anim.SetTrigger("Died");
     }
 }
Example #12
0
        public void Purge(Game game)
        {
            Textures.Clear();
            Texture2Ds.Clear();
            Texture3Ds.Clear();
            Models.Clear();
            Effects.Clear();
            Fonts.Clear();

            Textures   = new List <ContentResource <Texture> >();
            Texture2Ds = new List <ContentResource <Texture2D> >();
            Texture3Ds = new List <ContentResource <Texture3D> >();
            Models     = new List <ContentResource <Model> >();
            Effects    = new List <ContentResource <Effect> >();
            Fonts      = new List <ContentResource <SpriteFont> >();

            game.Content.Unload();
        }
Example #13
0
        private void Version1_4_Load(Stream stream)
        {
            int    i, count;
            string effectName;

            // Remove all current effects
            foreach (StatEffect effect in Effects)
            {
                onEffectRemoved?.Invoke(effect);
            }

            foreach (StatValue stat in Stats)
            {
                stat.Load(stream, 1.4f);
            }

            damageModifiers.Clear();
            count = stream.ReadInt();
            for (i = 0; i < count; i++)
            {
                DamageModifier instance = ScriptableObject.CreateInstance <DamageModifier>();
                instance.Load(stream, 1.4f);
                damageModifiers.Add(instance);
            }

            Effects.Clear();
            count = stream.ReadInt();
            for (i = 0; i < count; i++)
            {
                effectName = stream.ReadStringPacket();
                foreach (StatEffect effect in effectList.availableEffects)
                {
                    if (effect.name == effectName)
                    {
                        StatEffect instance = InstanceStatEffect(effect);
                        instance.RemainingTime = stream.ReadFloat();
                        Effects.Add(instance);
                        onEffectAdded?.Invoke(instance);

                        break;
                    }
                }
            }
        }
Example #14
0
        public void InitializeEffects(Mount mount)
        {
            if (Effects.Count > 0)
            {
                Effects.Clear();
            }

            Effects.Add(m_mountEffect = new EffectMount(EffectsEnum.Effect_ViewMountCharacteristics, mount.Id, DateTime.Now, mount.Template.Id));
            if (mount.Owner != null)
            {
                Effects.Add(m_belongsToEffect = new EffectString(EffectsEnum.Effect_BelongsTo, mount.Owner.Name));
            }
            Effects.Add(m_nameEffect     = new EffectString(EffectsEnum.Effect_Name, mount.Name));
            Effects.Add(m_validityEffect = new EffectDuration(EffectsEnum.Effect_Validity, MountManager.MountStorageValidity));

            Mount             = mount;
            mount.StoredSince = DateTime.Now;
            Owner.SetOwnedMount(mount);
        }
Example #15
0
 //Loads the cache into the current data, without deleting the cache
 public void RestoreCache()
 {
     Name = CachedName;
     Moves.Clear();
     Moves.AddRange(CachedMoves);
     Passive      = CachedPassive;
     Picture      = CachedPicture;
     Dead         = CachedDead;
     TotalHP      = CachedTotalHP;
     CurrentHP    = CachedCurrentHP;
     TotalActions = CachedTotalActions;
     Actions      = CachedActions;
     IsPuppet     = CachedIsPuppet;
     CanPassTurn  = CachedCanPassTurn;
     DeathMessage = CachedDeathMessage;
     Effects.Clear();
     Effects.AddRange(Effects);
     Markers.Clear();
     Markers.AddRange(CachedMarkers);
 }
        public bool RefreshInitData(int attempts = 1)
        {
            if (!SendPacket("heap", attempts))
            {
                return(false);
            }
            XmlNode interfaceXml  = InterfaceData;
            var     interfaceData = interfaceXml.ChildNodes[0].ChildNodes;
            var     effectsData   = interfaceData[6].ChildNodes[1].ChildNodes;

            Effects.Clear();
            foreach (XmlNode effectNode in effectsData)
            {
                if (effectNode.Name == "options")
                {
                    Effects.Add(new Effect(int.Parse(effectNode.ChildNodes[1].InnerText), effectNode.ChildNodes[0].InnerText));
                }
            }
            return(true);
        }
Example #17
0
 //Copies all essential elements from one card to this one
 public void CopyCard(BasicCard card)
 {
     Name = card.Name;
     Moves.Clear();
     Moves.AddRange(card.Moves);
     Passive      = card.Passive;
     Picture      = card.Picture;
     HasUltimate  = card.HasUltimate;
     HasPassive   = card.HasPassive;
     Dead         = card.Dead;
     TotalHP      = card.TotalHP;
     CurrentHP    = card.CurrentHP;
     TotalActions = card.TotalActions;
     Actions      = card.Actions;
     IsPuppet     = card.IsPuppet;
     CanPassTurn  = card.CanPassTurn;
     DeathMessage = card.DeathMessage;
     Effects.Clear();
     Effects.AddRange(card.Effects);
     Markers.Clear();
     Markers.AddRange(card.Markers);
 }
Example #18
0
        public void RemoveExcess()
        {
            if (Effects.Count > 1 && !ran)
            {
                Debug.Log("Remove called");
                ran = true;
                List <EffectType> tempList = new List <EffectType>();
                for (int i = 0; i < Effects.Count; i++)
                {
                    EffectType toCheck = Effects[i];
                    if (!tempList.Contains(toCheck))
                    {
                        Debug.Log("Adding " + toCheck);
                        tempList.Add(toCheck);
                    }
                }

                Effects.Clear();
                foreach (EffectType e in tempList)
                {
                    Effects.Add(e);
                }
            }
        }
Example #19
0
        public void MonsterDeath(Player player)
        {
            player.InCombat = false;
            InCombat        = false;
            Effects.Clear();
            string defeatString = $"You have defeated the {Name}!";

            OutputHelper.Display.StoreUserOutput(
                Settings.FormatSuccessOutputText(),
                Settings.FormatDefaultBackground(),
                defeatString);
            string expGainString = $"You have gained {ExperienceProvided} experience!";

            OutputHelper.Display.StoreUserOutput(
                Settings.FormatSuccessOutputText(),
                Settings.FormatDefaultBackground(),
                expGainString);
            foreach (IItem loot in MonsterItems.Where(item => item is IEquipment))
            {
                IEquipment equippableItem = loot as IEquipment;
                equippableItem.Equipped = false;
            }
            Name = $"Dead {Name}";
            Desc = "A corpse of a monster you killed.";
            player.Experience += ExperienceProvided;
            PlayerHelper.LevelUpCheck(player);
            if (player.QuestLog == null)
            {
                return;
            }

            foreach (Quest quest in player.QuestLog)
            {
                quest.UpdateQuestProgress(this);
            }
        }
Example #20
0
 public void ResetEffects()
 {
     Effects.Clear();
     EffectsCount        = 0;
     EnvironmentalEffect = null;
 }
Example #21
0
        /// <summary>
        /// 値をセットする
        /// </summary>
        /// <param name="paramName">フィールド名</param>
        /// <param name="value">値</param>
        public void SetValue(string paramName, object value)
        {
            switch (paramName)
            {
            case "id":
                Id = (int)((double)(value));
                break;

            case "animationId":
                AnimationId = (int)((double)(value));
                break;

            case "consumable":
                Consumable = (bool)(value);
                break;

            case "damage":
                Damage = (DamageEffect)(value);
                break;

            case "description":
                Description = (string)(value);
                break;

            case "effects":
                Effects.Clear();
                Effects.AddRange((List <Effect>)(value));
                break;

            case "hitType":
                HitType = (int)((double)(value));
                break;

            case "iconIndex":
                IconIndex = (int)((double)(value));
                break;

            case "itypeId":
                ItemTypeId = (int)((double)(value));
                break;

            case "name":
                Name = (string)(value);
                break;

            case "note":
                Note = (string)(value);
                break;

            case "occasion":
                Occasion = (int)((double)(value));
                break;

            case "price":
                Price = (int)((double)(value));
                break;

            case "repeats":
                Repeats = (int)((double)(value));
                break;

            case "scope":
                Scope = (int)((double)(value));
                break;

            case "speed":
                Speed = (int)((double)(value));
                break;

            case "successRate":
                SuccessRate = (int)((double)(value));
                break;

            case "tpGain":
                TpGain = (int)((double)(value));
                break;
            }
        }
Example #22
0
 public void StartCombat()
 {
     Effects.Clear();
     CurrentHealth = BaseHealth;
 }
Example #23
0
 public void ClearEffect()
 {
     Effects.Clear();
 }
 public void StartBattle()
 {
     CurHP = MaxHP;
     Effects.Clear();
 }
Example #25
0
 public void RemoveAllBuffs()
 {
     Effects.Clear();
 }
Example #26
0
        //Swaps current data with the cache
        public void SwapCache()
        {
            var tempName = Name;

            Name       = CachedName;
            CachedName = tempName;

            List <BasicMove> tempMoves = new List <BasicMove>();

            tempMoves.AddRange(Moves);
            Moves.Clear();
            Moves.AddRange(CachedMoves);
            CachedMoves.Clear();
            CachedMoves.AddRange(tempMoves);

            var tempPassive = Passive;

            Passive       = CachedPassive;
            CachedPassive = tempPassive;

            var tempPicture = Picture;

            Picture       = CachedPicture;
            CachedPicture = tempPicture;

            var tempDead = Dead;

            Dead       = CachedDead;
            CachedDead = tempDead;

            var tempTotalHP = TotalHP;

            TotalHP       = CachedTotalHP;
            CachedTotalHP = tempTotalHP;


            var tempCurrentHP = CurrentHP;

            CurrentHP       = CachedCurrentHP;
            CachedCurrentHP = tempCurrentHP;

            var tempTotalActions = TotalActions;

            TotalActions       = CachedTotalActions;
            CachedTotalActions = tempTotalActions;

            var tempActions = Actions;

            Actions       = CachedActions;
            CachedActions = tempActions;

            var tempIsPuppet = IsPuppet;

            IsPuppet       = CachedIsPuppet;
            CachedIsPuppet = tempIsPuppet;

            var tempCanPassTurn = CanPassTurn;

            CanPassTurn       = CachedCanPassTurn;
            CachedCanPassTurn = tempCanPassTurn;

            var tempDeathMessage = DeathMessage;

            DeathMessage       = CachedDeathMessage;
            CachedDeathMessage = tempDeathMessage;

            List <BuffDebuff> tempEffects = new List <BuffDebuff>();

            tempEffects.AddRange(Effects);
            Effects.Clear();
            Effects.AddRange(CachedEffects);
            CachedEffects.Clear();
            CachedEffects.AddRange(tempEffects);

            List <Marker> tempMarkers = new List <Marker>();

            tempMarkers.AddRange(Markers);
            Markers.Clear();
            Markers.AddRange(CachedMarkers);
            CachedMarkers.Clear();
            CachedMarkers.AddRange(tempMarkers);
        }
Example #27
0
 public virtual void StartEncounter()
 {
     Effects.Clear();
     NotifyPropertyChanged("Effects");
 }