public SCBrain(SCCommunicator communicator)
    {
        Debug.Log("SCBrain| Master server started.");
        this.communicator = communicator;
        logic = new SCLogic();

        games = new List<SCGameInfo>();
        commandBehaviours = new List<SCCommandBehaviour>();

        addCommandBehaviours();
    }
    public SCServer(SCClient owner, int playerLimit)
    {
        mPlayerLimit = playerLimit;
        currentPhase = Phase.IN_LOBBY;

        this.owner = owner;
        this.logic = new SCLogic(mPlayerLimit);
        connectedPlayers = new List<SCPlayerInfo>();
        SCCommunicator.fireCommand("added_player:name=" + SCCommunicator.userName);
        connectedPlayers.Add(new SCPlayerInfo(SCCommunicator.userName, SCPlayerInfo.LOCAL, SCPlayerInfo.LOCAL, 0, removePlayerFromLobby));

        Debug.Log("SCServer| Server created.");

        turnIndex = 0;
        turnsSkipped = 0;
    }
        public ExtSpoiler(FF1Rom _rom, SanityCheckerV2 _checker, ShopData _shopData, ItemNames _itemsText, List <IRewardSource> _itemPlacement, OverworldMap _overworldMap, IncentiveData _incentivesData, GearPermissions _weaponPermissions, GearPermissions _armorPermissions, Flags _flags)
        {
            rom               = _rom;
            checker           = _checker;
            shopData          = _shopData;
            itemsText         = _itemsText;
            itemPlacement     = _itemPlacement;
            overworldMap      = _overworldMap;
            incentivesData    = _incentivesData;
            weaponPermissions = _weaponPermissions;
            armorPermissions  = _armorPermissions;
            flags             = _flags;

            logic       = new SCLogic(rom, checker.Main, itemPlacement, flags, false);
            weapons     = Weapon.LoadAllWeapons(rom, flags).ToList();
            armors      = Armor.LoadAllArmors(rom, flags).ToList();
            magicSpells = rom.GetSpells();
        }
        }//Populate the Combobox and load list

        public void LoadServiceContract()
        {
            SCLogic SC_L = new SCLogic();

            List_Of_Service_Contract_OB = SC_L.ViewServiceContrac();
            foreach (ServiceContract SC in List_Of_Service_Contract_OB)
            {
                ListViewItem lst = new ListViewItem(new string[]
                {
                    SC.Id.ToString(),
                    SC.Description,
                    SC.DateFinalised.ToString(),
                    SC.DateTerminated.ToString(),
                    SC.Cost.ToString(),
                    SC.Status,
                    SC.identifier
                });

                lst.Tag = SC;
            }
        }//Load the list of service contracts
Exemple #5
0
        public Archipelago(FF1Rom _rom, List <IRewardSource> generatedPlacement, SanityCheckerV2 checker, ExpChests _expChests, IncentiveData _incentivesData, Flags _flags, Preferences _preferences)
        {
            rom            = _rom;
            expChests      = _expChests;
            incentivesData = _incentivesData;
            flags          = _flags;
            preferences    = _preferences;

            var kiPlacement = generatedPlacement.Where(r => ItemLists.AllQuestItems.Contains(r.Item) && r.Item != Item.Bridge).ToList();

            if (flags.ArchipelagoConsumables)
            {
                if (flags.ExtConsumablesEnabled)
                {
                    kiPlacement.AddRange(generatedPlacement.Where(r => r.Item >= Item.Tent && r.Item <= Item.Rapier));
                }
                else
                {
                    kiPlacement.AddRange(generatedPlacement.Where(r => r.Item >= Item.Tent && r.Item <= Item.Soft));
                }
            }

            if (flags.ArchipelagoShards)
            {
                kiPlacement.AddRange(generatedPlacement.Where(r => r.Item == Item.Shard));
            }

            if (flags.ArchipelagoGold)
            {
                kiPlacement.AddRange(generatedPlacement.Where(r => r.Item >= Item.Gold10 && r.Item < expChests.FirstExpItem));
            }

            switch (flags.ArchipelagoEquipment)
            {
            case ArchipelagoEquipment.Common:
                AddCommonEquipment(kiPlacement, generatedPlacement);
                AddRareEquipment(kiPlacement, generatedPlacement);
                AddLegendaryEquipment(kiPlacement, generatedPlacement);
                AddCasterEquipment(kiPlacement, generatedPlacement);
                break;

            case ArchipelagoEquipment.Rare:
                AddRareEquipment(kiPlacement, generatedPlacement);
                AddLegendaryEquipment(kiPlacement, generatedPlacement);
                AddCasterEquipment(kiPlacement, generatedPlacement);
                break;

            case ArchipelagoEquipment.Legendary:
                AddLegendaryEquipment(kiPlacement, generatedPlacement);
                AddCasterEquipment(kiPlacement, generatedPlacement);
                break;

            case ArchipelagoEquipment.CasterItems:
                AddCasterEquipment(kiPlacement, generatedPlacement);
                break;

            case ArchipelagoEquipment.Incentivized:
                AddIncentivizedEquipment(kiPlacement, generatedPlacement);
                break;
            }

            //Remove ToFr and distinct by address to remove duplicates
            kiPlacement = kiPlacement.Where(r => !ItemLocations.ToFR.Any(l => l.Address == r.Address)).GroupBy(r => r.Address).Select(g => g.First()).ToList();

            logic = new SCLogic(rom, checker.Main, kiPlacement, flags, true);
        }
 private void BuildLogic(List <IRewardSource> preBlackOrbLocationPool)
 {
     logic        = new SCLogic(base._rom, ((SanityCheckerV2)base._checker).Main, preBlackOrbLocationPool, base._flags, false);
     logicSources = logic.RewardSources.ToDictionary(r => r.RewardSource.Address);
 }