コード例 #1
0
        public void DetermineEventOutcome(PlayerHandler player, GameMain game, TravelHandler travel, Random rando, UI_Helper uihelper)
        {
            //determine success or failure of the outcome and return the outcome
            EventOptionOutcomes thisOutcome = CheckForSuccessOrFail(player, rando);


            //take actions depending on what the event outcome's transition is
            if (thisOutcome.thisNextTransition == EventOptionOutcomes.NextTransition.BackToTravelSilent)
            {
                travel.ClearWorldEvent();
            }
            else if (thisOutcome.thisNextTransition == EventOptionOutcomes.NextTransition.Combat)
            {
                //TODO: Add Combat
                //game.ChangeGameState(GameMain.GameState.Combat);
                travel.ClearWorldEvent();
            }
            else if (thisOutcome.thisNextTransition == EventOptionOutcomes.NextTransition.PassiveEvent)
            {
                Event thisPassiveEvent = game.dataManager.passiveEventData[thisOutcome.GetPassiveEventString()];
                thisPassiveEvent.DetermineValidText(rando);
                travel.SetCurrentPassiveEvent(thisPassiveEvent, false, rando, player, travel.GetWorldEventCreatureName());
                travel.ClearWorldEvent();
                travel.RunCurrentPassiveEvent(player, rando, uihelper);
            }
        }