Ejemplo n.º 1
0
        private bool StartMovingToVisitBuilding(TAI instance, uint citizenId, ref TCitizen citizen, ushort visitBuilding, bool isVirtual)
        {
            if (visitBuilding == 0)
            {
                return(false);
            }

            ushort currentBuilding = CitizenProxy.GetCurrentBuilding(ref citizen);

            if (isVirtual || currentBuilding == visitBuilding)
            {
                CitizenProxy.SetVisitPlace(ref citizen, citizenId, visitBuilding);
                CitizenProxy.SetVisitBuilding(ref citizen, visitBuilding);
                CitizenProxy.SetLocation(ref citizen, Citizen.Location.Visit);
                return(true);
            }
            else if (residentAI.StartMoving(instance, citizenId, ref citizen, currentBuilding, visitBuilding))
            {
                CitizenProxy.SetVisitPlace(ref citizen, citizenId, visitBuilding);
                CitizenProxy.SetVisitBuilding(ref citizen, visitBuilding);
                return(true);
            }

            return(false);
        }
Ejemplo n.º 2
0
        private void StartMovingToVisitBuilding(TAI instance, uint citizenId, ref TCitizen citizen, ushort currentBuilding, ushort visitBuilding, bool isVirtual)
        {
            CitizenProxy.SetVisitPlace(ref citizen, citizenId, visitBuilding);
            CitizenProxy.SetVisitBuilding(ref citizen, visitBuilding);

            if (isVirtual)
            {
                CitizenProxy.SetLocation(ref citizen, Citizen.Location.Visit);
                touristAI.AddTouristVisit(instance, citizenId, visitBuilding);
            }
            else
            {
                touristAI.StartMoving(instance, citizenId, ref citizen, currentBuilding, visitBuilding);
            }
        }
Ejemplo n.º 3
0
        private bool StartMovingToVisitBuilding(TAI instance, uint citizenId, ref TCitizen citizen, ushort visitBuilding)
        {
            if (visitBuilding == 0)
            {
                return(false);
            }

            ushort currentBuilding = CitizenProxy.GetCurrentBuilding(ref citizen);

            residentAI.StartMoving(instance, citizenId, ref citizen, currentBuilding, visitBuilding);
            CitizenProxy.SetVisitPlace(ref citizen, citizenId, visitBuilding);
            CitizenProxy.SetVisitBuilding(ref citizen, visitBuilding);

            return(true);
        }
Ejemplo n.º 4
0
 private void StartMovingToVisitBuilding(TAI instance, uint citizenId, ref TCitizen citizen, ushort currentBuilding, ushort visitBuilding)
 {
     CitizenProxy.SetVisitPlace(ref citizen, citizenId, visitBuilding);
     CitizenProxy.SetVisitBuilding(ref citizen, visitBuilding);
     touristAI.StartMoving(instance, citizenId, ref citizen, currentBuilding, visitBuilding);
 }