Beispiel #1
0
    private void createPirates()
    {
        SkillEnum[] skillList = new SkillEnum[] {};

        // Create pirates. Randomize pirate skills.
        for (int pi = 0; pi < numPirates; pi++)
        {
            Pirate pirate = new Pirate();
            pirates.Add(pirate);

            for (int si = 0; si < Pirate.numSkills; si++)
            {
                if (skillList.Length == 0)
                {
                    skillList = getAllSkills();
                }
                SkillEnum skill = skillList.Rnd();
                pirate.skills.Add(skill);
            }
            pirate.skills.Sort();

            onPirateCreated.Invoke(pirate);
        }

        // Choose the mutineer
        Pirate mutineer = pirates.Rnd();

        mutineer.mutiny   = Pirate.maxMutiny;
        mutineer.mutineer = true;
    }
Beispiel #2
0
    private void createTasks()
    {
        SkillEnum[] skillList = new SkillEnum[] {};

        for (int ti = 0; ti < 3; ti++)
        {
            Task task = new Task();
            tasks.Add(task);

            for (int si = 0; si < Task.numSkills; si++)
            {
                if (skillList.Length == 0)
                {
                    skillList = getAllSkills();
                }

                SkillEnum skill = skillList.Rnd();
                task.skills.Add(skill);
            }
            task.skills.Sort();

            task.gold = Random.Range(Task.minGold, Task.maxGold + 1);
            float v = Random.value;
            task.crew = v < 0.5 ? 1 : (v < 0.9 ? 2 : 3);

            onTaskCreated.Invoke(task);
        }
    }