Example #1
0
        public void GetNewQuest(int serverMessageIndex = -1) // Generates a new quest and sends it to all clients
        {
            if (!NetworkServer.active || Questing.ClientMessage.Instances.Count > Questing.Config.questAmountMax)
            {
                return;
            }


            // Attemots to get a new quest
            Questing.ClientMessage message;
            try
            {
                message = Questing.Quest.GetQuest(serverMessageIndex);
            }
            catch {
                if (Core.debugMode) {
                    Debug.LogError("RPGMOD: Error when obtaining quest");
                }
                message = new Questing.ClientMessage();
            }

            // If the quest has the default description it is deemed bad to send
            if (message.description != "bad")
            {
                QuestCooldown = Run.instance.GetRunStopwatch();
                message.SendToAll();
            }
        }
Example #2
0
        public void Update()
        {
            if (GameStarted)
            {
                if (Questing.Config.questingEnabled)
                {
                    ManageQuests();
                }

                // Debug Keys
                if (Core.debugMode)
                {
                    if (Input.GetKeyDown(KeyCode.F3))
                    {
                        GetNewQuest();
                    }

                    if (Input.GetKeyDown(KeyCode.F4))
                    {
                        Questing.ClientMessage message = Questing.ClientMessage.Instances.Last();
                        message.active = false;
                        message.SendToAll();
                    }
                }
            }

            // Reload config key
            if (Input.GetKeyDown(KeyCode.F6))
            {
                Questing.Config.Load(Config, true);
                ResetUI();
            }
        }