public static void ResetSpriteSelection(ObjectField pField)
    {
        switch (GameObjectEditor.GetCurrentScriptable().mType)
        {
        case GameScriptable.ObjectType.SpawnFactory:
            SpawnFactory aTempObj = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();
            if (!string.IsNullOrEmpty(aTempObj.mTextureGUID))
            {
                pField.SetEnabled(false);
                pField.value = aTempObj.mDisplaySprite;
                pField.SetEnabled(true);
            }
            break;

        case GameScriptable.ObjectType.StaticObject:
            StaticObject aTObj = (StaticObject)GameObjectEditor.GetCurrentScriptable();
            if (!string.IsNullOrEmpty(aTObj.mTextureGUID))
            {
                pField.SetEnabled(false);
                pField.value = aTObj.mDisplaySprite;
                pField.SetEnabled(true);
            }
            break;

        case GameScriptable.ObjectType.Item:
            Item aTmpObj = (Item)GameObjectEditor.GetCurrentScriptable();
            if (!string.IsNullOrEmpty(aTmpObj.mTextureGUID))
            {
                pField.SetEnabled(false);
                pField.value = aTmpObj.mDisplaySprite;
                pField.SetEnabled(true);
            }
            break;
        }
    }
    public static void ResetCollectSelection(ObjectField pField)
    {
        switch (GameObjectEditor.GetCurrentScriptable().mType)
        {
        case GameScriptable.ObjectType.Item:
            Item aItem = (Item)GameObjectEditor.GetCurrentScriptable();
            if (!string.IsNullOrEmpty(aItem.mSoundGUID))
            {
                pField.SetEnabled(false);
                pField.value = aItem.mItemCollectSound;
                pField.SetEnabled(true);
            }
            break;

        case GameScriptable.ObjectType.SpawnFactory:
            SpawnFactory aTem = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();
            if (!string.IsNullOrEmpty(aTem.mSoundGUID))
            {
                pField.SetEnabled(false);
                pField.value = aTem.mSpawnSound;
                pField.SetEnabled(true);
            }
            break;
        }
    }
		public void SetSpawnFactory(SpawnFactory spawnFactory)
		{
			if (spawnFactory == null)
			{
				Debug.Log("Spawn factory being set to NULL");
			}
			this._spawnFactory = spawnFactory;
		}
예제 #4
0
 // Methods
 public VisualEffect GetEffect()
 {
     if (this._effects == null)
     {
         this._effects = new SpawnFactory <VisualEffect>(this._prefab, null, 0, true, null);
     }
     return(this._effects.HireItem(false));
 }
 void SelectSpawnFactory(SpawnFactory pSpawnFactory)
 {
     mLayerType.value = pSpawnFactory.mRenderLayer;
     GenHelpers.ResetSpawnEnemySelection(mSpawnEnemy);
     GenHelpers.ResetSpriteSelection(mFactorySprite);
     GenHelpers.ResetCollectSelection(mSpawnSound);
     mEditoryBlock.Bind(new SerializedObject(pSpawnFactory));
 }
    public static void OnCollectSoundSelection(AudioClip pClip, ObjectField pField)
    {
        if (pClip == null)
        {
            return;
        }
        string[] aAssetFolder = { "Assets/ScriptableObjects/Asset Meta Data" };
        if (!AssetDatabase.IsValidFolder(aAssetFolder[0]))
        {
            ShowSelectionWarning();
            ResetCollectSelection(pField);
            return;
        }
        string[] aAssetGUIDs = AssetDatabase.FindAssets(pClip.name, aAssetFolder);
        if (aAssetGUIDs.Length > 0)
        {
            string aPath = AssetDatabase.GUIDToAssetPath(aAssetGUIDs[0]);
            if (AssetDatabase.GetMainAssetTypeAtPath(aPath) == typeof(AssetMetaData))
            {
                AssetMetaData aCurrentAssetData = (AssetMetaData)AssetDatabase.LoadAssetAtPath(aPath, typeof(AssetMetaData));
                if (aCurrentAssetData.mType == AssetMetaData.AssetType.AudioAsset)
                {
                    switch (GameObjectEditor.GetCurrentScriptable().mType)
                    {
                    case GameScriptable.ObjectType.Item:
                        Item aTempObj = (Item)GameObjectEditor.GetCurrentScriptable();
                        aTempObj.mSoundGUID        = aCurrentAssetData.mGUID;
                        aTempObj.mItemCollectSound = pClip;
                        break;

                    case GameScriptable.ObjectType.SpawnFactory:
                        SpawnFactory aTmpObj = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();
                        aTmpObj.mSoundGUID  = aCurrentAssetData.mGUID;
                        aTmpObj.mSpawnSound = pClip;
                        break;
                    }
                }
                else
                {
                    ShowSelectionWarning();
                    ResetCollectSelection(pField);
                    return;
                }
            }
            else
            {
                ShowSelectionWarning();
                ResetCollectSelection(pField);
                return;
            }
        }
        else
        {
            ShowSelectionWarning();
            ResetCollectSelection(pField);
            return;
        }
    }
예제 #7
0
    // Start is called before the first frame update
    void Start()
    {
        DegAngle  = MinAngle;
        firePower = InitFirePower;

        var obj = GameObject.Find("KoromoManager");

        koromoFac = obj.GetComponent <SpawnFactory>();
    }
    public static void ResetSpawnEnemySelection(ObjectField pField)
    {
        SpawnFactory aTem = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();

        if (!string.IsNullOrEmpty(aTem.mEnemyGUID))
        {
            pField.SetEnabled(false);
            pField.value = aTem.mSpawnEnemy;
            pField.SetEnabled(true);
        }
    }
예제 #9
0
    void Awake()
    {
        foreach (string spawnName in LevelPatternSaver.spawnObjectsFromStrings.Keys)
        {
            Pool pool = new Pool(LevelPatternSaver.spawnObjectsFromStrings[spawnName], poolSize, growing);
            //poolFromName.Add(spawnName, pool);
            poolFromName[spawnName] = pool;
        }


        instance = this;
    }
예제 #10
0
    // Start is called before the first frame update
    void Start()
    {
        var anim = GetComponent <Animator>();

        anim.SetBool("steamFlag", true);

        transparent = GetComponent <Transparent>();

        var obj = GameObject.Find("SteamManager");

        fac = obj.GetComponent <SpawnFactory>();
    }
 public static void OnSpawnEnemySelection(Enemy pEnemy, ObjectField pField)
 {
     if (pEnemy == null)
     {
         return;
     }
     string[] aAssetFolder = { "Assets/ScriptableObjects/Asset Meta Data" };
     if (!AssetDatabase.IsValidFolder(aAssetFolder[0]))
     {
         ShowSelectionWarning();
         ResetSpawnEnemySelection(pField);
         return;
     }
     string[] aAssetGUIDs = AssetDatabase.FindAssets(pEnemy.name, aAssetFolder);
     if (aAssetGUIDs.Length > 0)
     {
         string aPath = AssetDatabase.GUIDToAssetPath(aAssetGUIDs[0]);
         if (AssetDatabase.GetMainAssetTypeAtPath(aPath) == typeof(AssetMetaData))
         {
             AssetMetaData aCurrentAssetData = (AssetMetaData)AssetDatabase.LoadAssetAtPath(aPath, typeof(AssetMetaData));
             if (aCurrentAssetData.mType == AssetMetaData.AssetType.PrefabAsset)
             {
                 SpawnFactory aTmpObj = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();
                 aTmpObj.mEnemyGUID  = aCurrentAssetData.mGUID;
                 aTmpObj.mSpawnEnemy = pEnemy;
             }
             else
             {
                 ShowSelectionWarning();
                 ResetSpawnEnemySelection(pField);
                 return;
             }
         }
         else
         {
             ShowSelectionWarning();
             ResetSpawnEnemySelection(pField);
             return;
         }
     }
     else
     {
         ShowSelectionWarning();
         ResetSpawnEnemySelection(pField);
         return;
     }
 }
예제 #12
0
    static StringBuilder GetSpawnFactoryJson(SpawnFactory pFactory, ref StringBuilder pResources)
    {
        StringBuilder aFactoryComponents = new StringBuilder();
        GSprite       aSprite            = new GSprite(pFactory.mDisplaySprite.rect, pFactory.mTextureGUID,
                                                       pFactory.mDisplaySprite.texture.height, (int)pFactory.mRenderLayer);

        SaveAssetData(GetAssetFromGUID(pFactory.mTextureGUID, AssetMetaData.AssetType.TextureAsset), ref pResources);
        aFactoryComponents.Append(aSprite.ToString() + ",\n");
        GPolygonCollider aCollider = new GPolygonCollider(pFactory.mIsTrigger);

        aFactoryComponents.Append(aCollider.ToString() + ",\n");
        SFactory aFactory = new SFactory(pFactory.mEnemyGUID, pFactory.mPoolCount, pFactory.mSpawnTime);

        SaveEnemyPrefab(GetAssetFromGUID(pFactory.mEnemyGUID, AssetMetaData.AssetType.PrefabAsset), ref pResources);
        aFactoryComponents.Append(aFactory.ToString());
        return(aFactoryComponents);
    }
예제 #13
0
    private void ViveBridge_TriggerUnclicked(object sender, ClickedEventArgs e)
    {
        switch (ViveBridge.InteractionMode)
        {
        case InteractionMode.ScalePrefabs:
        case InteractionMode.Manipulation:
            if (isLocalPlayer)
            {
                ReleaseObject();
                DisplayBox(ViveBridge.CollidedName, false);
            }
            else
            {
                RpcReleaseObject();
            }
            break;

        case InteractionMode.SpawnPrimitives:
            Vector3 primitivePosition = CalculatePrimitivePosition(ViveManipulator.MinimumPrimitiveDistance, transform.position, transform.forward);
            primitivePosition.y -= ViveManipulator.PrimitiveScale;

            if (isLocalPlayer)
            {
                if (ViveBridge.IndicatorCount == 8)
                {
                    return;
                }
                var primitive = SpawnFactory.Spawn("Prefabs/Scene1/SphereMarker", primitivePosition, transform.rotation, Vector3.zero);
                primitiveManager.RegisterPrimitive(primitive);
                RpcRegisterPosition(primitivePosition);
                RpcIncreasePointsText();
            }
            else
            {
                RpcRegisterPosition(primitivePosition);
            }
            break;

        case InteractionMode.SpawnObjects:
            if (isLocalPlayer)
            {
                PlaceObject();
            }
            break;
        }
    }
예제 #14
0
    // Start is called before the first frame update
    void Start()
    {
        saucePanManager = GetComponent <SaucePanManager>("Saucepan_Lid_Icon");


        var obj = GameObject.Find("OilFlyManager");

        oilFac = obj.GetComponent <SpawnFactory>();

        spriteRenderer        = GetComponent <SpriteRenderer>();
        spriteRenderer.sprite = NormalSprite;

        scaleFade        = new FadeValue(0.01f, OilFlyHitTime, 0.01f, 1.0f);
        scaleFade.isPlus = true;

        isHit     = false;
        isProtect = false;
    }
예제 #15
0
 // Update is called once per frame
 void Update()
 {
     time += Time.deltaTime;
     Debug.Log("I exist !!");
     while (numSpawn < nbSpawns && spawnPattern.spawns[numSpawn].time <= time)
     {
         Debug.Log("ENEMYFACTORY!");
         //GameObject spawn = GameObject.Instantiate(LevelPatternSaver.spawnObjectsFromStrings[spawnPattern.spawns[numSpawn].spawned]);
         GameObject spawn = SpawnFactory.Take(spawnPattern.spawns[numSpawn].spawned);
         spawn.transform.position = new Vector2(spawnPattern.spawns[numSpawn].x, spawnPattern.spawns[numSpawn].y);
         spawn.SetActive(true);
         numSpawn++;
         IncreaseSpeed(1.01f);
     }
     if (!bossSpawned && numSpawn >= nbSpawns)
     {
         Invoke("SpawnBoss", 10);
         bossSpawned = true;
         IncreaseSpeed(2);
     }
 }
예제 #16
0
    // Start is called before the first frame update
    void Start()
    {
        state.FoldALLBit();
        state.AddBit(State.Normal);

        face = CharaFaceState.Normal;

        //このオブジェクトのSprteRender取得
        spriteRenderer = gameObject.GetComponent <SpriteRenderer>();

        var obj = GameObject.Find("Themometer_main");

        themoCtrl = obj.GetComponent <ThemometerController>();

        obj      = GameObject.Find("ThemoRangeGauge");
        themoMan = obj.GetComponent <ThemoManager>();

        obj         = GameObject.Find("CustomerManager");
        customerFac = obj.GetComponent <SpawnFactory>();

        animator = GetComponent <Animator>();
        animator.SetBool("Grab", false);
        animator.SetBool("Walk", false);


        //揚げ時間
        friedTimer = new Timer(BurnFriedTime);
        friedTimer.Start();


        //リアクション
        reactionState = ReactionState.None;
        reactionTimer = new Timer(6);
        reactionDisp  = new Vector3(0.5f, 0.5f, PosZ - 0.01f);;
        reactionTimer.EnabledLoop();
        reactionTimer.Start();

        GameDirector.totalCustomerNum++;
    }
예제 #17
0
    /// <summary>
    /// Initializes a new instance of the <see cref="LevelScript"/> class by reading and XML file representing the level.
    /// </summary>
    /// <param name="filename">Filename.</param>
    public LevelScript(string filename)
    {
        spawns = new Stack <List <Spawn> >();
        TextAsset file  = (TextAsset)Resources.Load("Level Scripts/" + filename, typeof(TextAsset));
        XElement  level = XElement.Parse(file.text);

        this.level = int.Parse(level.Attribute("level").Value);

        var objects =
            from obj in level.Descendants("Object")
            let distance = float.Parse(obj.Element("Distance").Value)
                           orderby distance descending
                           group obj by distance into grp
                           select SpawnFactory.Create(grp);

        foreach (var batch in objects)
        {
            spawns.Push(batch);
        }

        backup = new Stack <List <Spawn> >(spawns);
    }
    public static void OnSpriteSelection(Sprite pSelectedSprite, ObjectField pField)
    {
        if (pSelectedSprite == null)
        {
            return;
        }
        string[] aAssetFolder = { "Assets/ScriptableObjects/Asset Meta Data" };
        if (!AssetDatabase.IsValidFolder(aAssetFolder[0]))
        {
            ShowSelectionWarning();
            ResetSpriteSelection(pField);
            return;
        }
        string[] aAssetGUIDs = AssetDatabase.FindAssets(pSelectedSprite.texture.name, aAssetFolder);
        if (aAssetGUIDs.Length > 0)
        {
            string aPath = AssetDatabase.GUIDToAssetPath(aAssetGUIDs[0]);
            if (AssetDatabase.GetMainAssetTypeAtPath(aPath) == typeof(AssetMetaData))
            {
                AssetMetaData aCurrentAssetData = (AssetMetaData)AssetDatabase.LoadAssetAtPath(aPath, typeof(AssetMetaData));
                if (aCurrentAssetData.mType == AssetMetaData.AssetType.TextureAsset)
                {
                    switch (GameObjectEditor.GetCurrentScriptable().mType)
                    {
                    case GameScriptable.ObjectType.SpawnFactory:
                        SpawnFactory aTempObj = (SpawnFactory)GameObjectEditor.GetCurrentScriptable();
                        aTempObj.mTextureGUID   = aCurrentAssetData.mGUID;
                        aTempObj.mDisplaySprite = pSelectedSprite;
                        break;

                    case GameScriptable.ObjectType.StaticObject:
                        StaticObject aTObj = (StaticObject)GameObjectEditor.GetCurrentScriptable();
                        aTObj.mTextureGUID   = aCurrentAssetData.mGUID;
                        aTObj.mDisplaySprite = pSelectedSprite;
                        break;

                    case GameScriptable.ObjectType.Item:
                        Item aTmpObj = (Item)GameObjectEditor.GetCurrentScriptable();
                        aTmpObj.mTextureGUID   = aCurrentAssetData.mGUID;
                        aTmpObj.mDisplaySprite = pSelectedSprite;
                        break;

                    default:
                        ShowSelectionWarning();
                        ResetSpriteSelection(pField);
                        break;
                    }
                }
                else
                {
                    ShowSelectionWarning();
                    ResetSpriteSelection(pField);
                    return;
                }
            }
            else
            {
                ShowSelectionWarning();
                ResetSpriteSelection(pField);
                return;
            }
        }
        else
        {
            ShowSelectionWarning();
            ResetSpriteSelection(pField);
            return;
        }
    }
		public void Hire(SpawnFactory spawnFactory)
		{
			this.SetSpawnFactory(spawnFactory);
			this.OnHire();
			this._isHired = true;
		}
예제 #20
0
 // Start is called before the first frame update
 void Start()
 {
     oilFac = GetComponent <SpawnFactory>();
 }
예제 #21
0
    public void OnEnable()
    {
        setupWindow();

        // Data
        dataRoot.Add(new Label("Choose a SpawnFactory:"));
        objectData            = new ObjectField();
        objectData.objectType = typeof(SpawnFactory);
        dataRoot.Add(objectData);

        objectData.RegisterCallback <ChangeEvent <Object> >((evt) =>
        {
            var change   = (evt.target as ObjectField).value;
            spawnFactory = change as SpawnFactory;
            UpdateBinding();
        });

        dataRoot.Add(new Spacer(30));
        dataRoot.Add(new Label("Name:"));
        nameTextField             = new TextField();
        nameTextField.bindingPath = "objectName";
        dataRoot.Add(nameTextField);

        addSlider(ref dataRoot, 20, 100, "Health:   ", "health");
        addSlider(ref dataRoot, 1, 100, "TimeInterval (s):   ", "timeInterval");


        dataRoot.Add(new Spacer(30));
        dataRoot.Add(new Label("Enemy:"));
        var enemyData = new ObjectField();

        enemyData.objectType  = typeof(Enemy);
        enemyData.bindingPath = "enemy";
        dataRoot.Add(enemyData);

        dataRoot.Add(new Spacer(30));
        dataRoot.Add(new Label("Drop Item:"));
        var itemData = new ObjectField();

        itemData.objectType  = typeof(Item);
        itemData.bindingPath = "dropItem";
        dataRoot.Add(itemData);

        // sprites
        Button newData = new Button(() =>
        {
            SpawnFactory newSpawnFactory = CreateInstance <SpawnFactory>();
            newSpawnFactory.objectName   = "SpawnFactory";
            var path = "Assets/Resources/Gauntlet/Prefabs/SpawnFactories";
            AssetDatabase.CreateAsset(newSpawnFactory, AssetDatabase.GenerateUniqueAssetPath(path + "/SpawnFactory-00.asset"));
            AssetDatabase.SaveAssets();
            AssetDatabase.Refresh();
            objectData.value = newSpawnFactory;
            UpdateBinding();
        });

        newData.text = "New";
        spriteRoot.Add(newData);
        spriteRoot.Add(new Spacer(30));
        spriteRoot.Add(new Label("SpawnFactory Sprite:"));
        objectTileSprite             = new ObjectField();
        objectTileSprite.objectType  = typeof(Sprite);
        objectTileSprite.bindingPath = "mainSprite";
        spriteRoot.Add(objectTileSprite);
        objectTileSpriteImage = new Image()
        {
            style =
            {
                width             = 100,
                height            = 100,
                borderLeftWidth   =   2,
                borderRightWidth  =   2,
                borderTopWidth    =   2,
                borderBottomWidth =   2,
                marginTop         =  10,
                marginBottom      =  20,
                marginLeft        =  10,
                borderColor       = Color.gray
            },
            scaleMode = ScaleMode.ScaleToFit
        };

        objectTileSprite.RegisterCallback <ChangeEvent <Object> >((evt) =>
        {
            var change = (evt.target as ObjectField).value;
            if (change)
            {
                var sprite = change as Sprite;
                GauntletLevelEditor.rebindImageTexture(ref objectTileSpriteImage, sprite);
            }
            else
            {
                objectTileSpriteImage.image = null;
            }

            if (objectData.value)
            {
                (objectData.value as SpawnFactory).mainSprite = change as Sprite;
            }
            Repaint();
            parentWindow.rebindPrefabListView();
        });

        spriteRoot.Add(objectTileSpriteImage);
    }
예제 #22
0
    // Start is called before the first frame update
    void Start()
    {
        var obj = GameObject.Find("KoromoManager");

        koromoFac = obj.GetComponent <SpawnFactory>();
    }
 bool IsSpawnFactoryValid(SpawnFactory pFactory)
 {
     return(!string.IsNullOrEmpty(pFactory.mName) && pFactory.mColliderType == GameScriptable.ColliderType.Box &&
            !pFactory.mIsTrigger && pFactory.mRenderLayer == Level.LayerTypes.StaticObjects && pFactory.mDisplaySprite != null &&
            !string.IsNullOrEmpty(pFactory.mEnemyGUID) && pFactory.mSpawnEnemy != null);
 }
예제 #24
0
        public static void NewGame()
        {
            Console.Clear();

            turn = 0;

            int playerCount = ValidateChoice("Players: ", 2, 4);

            teamCount = 0;
            int playersPerTeam = 0;

            switch (playerCount)
            {
            case 2:
            case 4:
                teamCount = 2;
                break;

            case 3:
                teamCount = 3;
                break;
            }

            playersPerTeam = playerCount / teamCount;
            Dictionary <int, List <IPlayer> > teams = new Dictionary <int, List <IPlayer> >();

            for (byte teamIndex = 0; teamIndex < teamCount; teamIndex++)
            {
                teams.Add(teamIndex, new List <IPlayer>());

                for (byte i = 0; i < playersPerTeam; i++)
                {
                    try
                    {
                        ConsoleLogger.Print($"Enter Team {teamIndex + 1} Player {i + 1}'s name: ");
                        teams[teamIndex].Add(PlayerFactory.CreateNewPlayer(Console.ReadLine(), i, teams[teamIndex]));
                    }
                    catch (Exception ex)
                    {
                        ConsoleLogger.Print(ex.Message);
                        i--;
                    }
                }
            }

            IList <IPlayer> playersInGame = new List <IPlayer>();

            for (byte playerIndex = 0; playerIndex < playersPerTeam; playerIndex++)
            {
                for (byte teamInd = 0; teamInd < teamCount; teamInd++)
                {
                    playersInGame.Add(teams[teamInd][playerIndex]);
                }
            }

            FileLogger.Log("-------------------");

            inGame = true;

            ConsoleLogger.Print("", 1000);

            while (inGame)
            {
                turn++;

                foreach (var player in playersInGame)
                {
                    if (!inGame)
                    {
                        break;
                    }
                    if (!player.IsAlive)
                    {
                        continue;
                    }

                    FileLogger.Log($"{player.Name}'s turn: {player.Souls} souls");
                    bool stillPlayerTurn = true;

                    while (stillPlayerTurn)
                    {
                        ICommand command;
                        bool     commandIsValid;

                        do
                        {
                            command        = Command.ReadCommand();
                            commandIsValid = command.IsValid(playersInGame, player);
                            if (!commandIsValid)
                            {
                                ConsoleLogger.Print($"Invalid command: {command.InvalidReason}. Try again! ");
                            }
                        } while (!commandIsValid);

                        switch (command.Name)
                        {
                        case "help":
                            ConsoleLogger.PrintTextFile(false, "help");
                            break;

                        case "skip":
                            FileLogger.Log($" -- Player {player.Name} skipped their turn");
                            stillPlayerTurn = false;
                            break;

                        case "surrender":
                            player.Team.Remove(player);

                            player.Surrender();

                            stillPlayerTurn = false;

                            inGame = teams.Keys.Where(team => teams[team].Count > 0).Count() > 1;

                            break;

                        case "attack":
                            string opponentName        = command.Parameters[0];
                            string opponentMonsterType = command.Parameters[1];
                            string opponentMonsterID   = command.Parameters[2];
                            string myMonsterType       = command.Parameters[3];
                            string myMonsterID         = command.Parameters[4];

                            //STILL NOT IMPLEMENTED
                            throw new NotImplementedException();

                        case "summon":
                            string monsterType  = command.Parameters[0];
                            string monsterName  = command.Parameters[1];
                            int    soulOffering = int.Parse(command.Parameters[2]);

                            stillPlayerTurn = false;

                            switch (monsterType)
                            {
                            case "junior":
                                player.Summon(SpawnFactory.CreateJuniorSpawn(monsterName, soulOffering));
                                break;

                            case "regular":
                                player.Summon(SpawnFactory.CreateRegularSpawn(monsterName, soulOffering));
                                break;

                            case "senior":
                                if (turn < 15)
                                {
                                    FileLogger.Log($"Player {player.Name} is trying to summon a Senior. You cannot summon a Senior Spawn before the 15th turn!");
                                    stillPlayerTurn = true;
                                    break;
                                }
                                player.Summon(SpawnFactory.CreateSeniorSpawn(monsterName, soulOffering));
                                break;
                            }

                            break;

                        case "inventory":
                            int teamID   = int.Parse(command.Parameters[0]) - 1;
                            int playerID = int.Parse(command.Parameters[1]);
                            if (teams[teamID][playerID].IsAlive)
                            {
                                teams[teamID][playerID].ListInventory();
                            }
                            else
                            {
                                ConsoleLogger.Print($"Player {teams[teamID][playerID].Name} is not alive!");
                            }
                            break;

                        default:
                            break;
                        }
                    }
                }
            }

            FileLogger.ConfirmWriteLog();
        }
예제 #25
0
 // Start is called before the first frame update
 void Start()
 {
     koromoFac = this.GetComponent <SpawnFactory>();
 }