Ejemplo n.º 1
0
        public void HandleObjectProperty(BaseWorldMessage message)
        {
            ObjectPropertyMessage propMessage = (ObjectPropertyMessage)message;

            // Debugging
            foreach (string key in propMessage.Properties.Keys)
            {
                object val = propMessage.Properties[key];
                log.DebugFormat("HandleObjectProperty for OID {0}, setting prop {1} = {2}",
                                message.Oid, key, val);
            }
            HandleObjectPropertyHelper(message.Oid, propMessage.Properties);
        }
Ejemplo n.º 2
0
        public void _HandleObjectProperty(BaseWorldMessage message)
        {
            ObjectPropertyMessage propMessage = (ObjectPropertyMessage)message;

            if (propMessage.Properties.Count <= 0)
            {
                return;
            }
            AtavismObjectNode target = ClientAPI.GetTargetObject();
            AtavismPlayer     player = ClientAPI.GetPlayerObject();

            //pet = None;
            //activePet = MarsUnit._GetUnitProperty2("player", "activePet", None);
            //if (activePet != null)
            //	pet = ClientAPI.World.GetObjectByOID(activePet);
            string[] args;
            foreach (string prop in propMessage.Properties.Keys)
            {
                string eventName = "PROPERTY_" + prop;
                if (target != null && message.Oid == target.Oid)
                {
                    args    = new string[1];
                    args[0] = "target";
                    AtavismEventSystem.DispatchEvent(eventName, args);
                }
                if (player != null && propMessage.Oid == player.Oid)
                {
                    args    = new string[1];
                    args[0] = "player";
                    AtavismEventSystem.DispatchEvent(eventName, args);
                }
                //if (pet != null && message.Oid == pet.OID)
                //	ClientAPI.Interface.DispatchEvent(eventName, ["pet"]);
                // Always post an "any" unit event.
                args    = new string[2];
                args[0] = "any";
                args[1] = propMessage.Oid.ToString();
                AtavismEventSystem.DispatchEvent(eventName, args);
            }
        }