Example #1
0
 public MingmingSaveModel(MingmingInstance mingmingInstance)
 {
     MingmingDataName = mingmingInstance.DataName;
     Level            = mingmingInstance.Level;
     CurrentHealth    = mingmingInstance.CurrentHealth;
     Experience       = mingmingInstance.Experience;
     AttackModifier   = mingmingInstance.AttackModifier;
     DefenseModifier  = mingmingInstance.DefenseModifier;
     HealthModifier   = mingmingInstance.HealthModifier;
 }
Example #2
0
    public void GetEncounter()
    {
        bool hasEncounter = Rules.GetRandomFloat() <= EncounterChance;

        if (!hasEncounter)
        {
            return;
        }

        mingmings.Clear();

        int mingmingSpawns = Rules.GetRandomInt(1, MaxMingmings + 1);

        for (int i = 0; i < mingmingSpawns; i++)
        {
            var _drop = DropTable.GetDrop();

            if (_drop != null)
            {
                int mingmingLevel = Rules.GetRandomInt(MinMingmingLevel, MaxMingmingLevel + 1);
                var _mingming     = new MingmingInstance((MingmingData)_drop, mingmingLevel);
                _mingming.Name = "Wild " + _mingming.Name;
                mingmings.Add(_mingming);
            }
        }

        if (mingmings.Any())
        {
            OnStartEncounter?.Invoke();
            var player = FindObjectOfType <PlayerController>();

            var thisScene   = new LevelSceneData(gameObject.scene.name, this, player);
            var battleScene = new BattleSceneData(GameSceneController.BattleScene, player.DevController.DeckHolder.CurrentDeck, new List <CardData>(),
                                                  thisScene, player.DevController.PlayableMingmings, mingmings);

            GameSceneController.Singleton.SwapScenes(thisScene, battleScene);
        }
    }
Example #3
0
 public static int GetExpNextLevel(MingmingInstance mingmingInstance)
 {
     return(GetExpForLevel(mingmingInstance.Level + 1));
 }