Example #1
0
        public static void Main()
        {
            var player = GetExitingObject();

            if (!GetIsPlayer(player))
            {
                return;
            }

            var playerID = GetGlobalID(player);
            var mapPins  = MapPinRepo.Get(playerID);

            mapPins.Entities.Clear();

            // For every map pin found on a player,
            // create a new entity and store it in the DB.
            for (int x = 0; x < GetNumberOfMapPins(player); x++)
            {
                var mapPinDetails = GetMapPinDetails(player, x);
                if (string.IsNullOrWhiteSpace(mapPinDetails.Text))
                {
                    continue;
                }

                MapPin mapPin = new MapPin
                {
                    AreaTag   = GetTag(mapPinDetails.Area),
                    Text      = mapPinDetails.Text,
                    PositionX = mapPinDetails.PositionX,
                    PositionY = mapPinDetails.PositionY
                };

                mapPins.Entities.Add(mapPin);
            }

            MapPinRepo.Set(playerID, mapPins);
        }
        public static void Main()
        {
            NWGameObject oPC = (GetEnteringObject());

            if (!GetIsPlayer(oPC))
            {
                return;
            }
            if (GetLocalInt(oPC, "MAP_PINS_LOADED") == 1)
            {
                return;
            }

            var playerID = GetGlobalID(oPC);
            var pins     = MapPinRepo.Get(playerID);

            foreach (var pin in pins.Entities)
            {
                var area = GetObjectByTag(pin.AreaTag);
                SetMapPin(oPC, pin.Text, pin.PositionX, pin.PositionY, area);
            }

            SetLocalInt(oPC, "MAP_PINS_LOADED", 1);
        }