Beispiel #1
0
            public bool isHostile(DecisionMaker dm)
            {
                if (team == null)
                {
                    return false;
                }

                if (team.hostility.Contains(dm.team.id))
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
Beispiel #2
0
        //private static List<string> availableDMs;
        //public static List<string> AvailableDMs
        //{
        //    get { return availableDMs; }
        //}
        public static DecisionMaker GetSpecificDMInfo(string s)
        {
            if (allDMs.ContainsKey(s))
            {
                DecisionMaker dm = new DecisionMaker(allDMs[s].id, allDMs[s].team);
                lock (dmLock)
                {
                    dm.availability = allDMs[s].availability;
                    dm.briefing = allDMs[s].briefing;
                    dm.color = allDMs[s].color;
                    dm.isHuman = allDMs[s].isHuman;
                    dm.role = allDMs[s].role;
                }
                return dm;
            }

            return null;
        }
Beispiel #3
0
        public void ReceiveDecisionMakerEvent(SimulationEvent dmEvent)
        {
            string dmID = ((StringValue)dmEvent["ID"]).value;
            string dmRole = ((StringValue)((AttributeCollectionValue)dmEvent["Attributes"])["RoleName"]).value;
            string team = ((StringValue)((AttributeCollectionValue)dmEvent["Attributes"])["TeamMember"]).value;
            int dmColor = ((IntegerValue)((AttributeCollectionValue)dmEvent["Attributes"])["Color"]).value;
            string dmBriefing = ((StringValue)((AttributeCollectionValue)dmEvent["Attributes"])["Briefing"]).value;
            Boolean isObserver = ((BooleanValue)((AttributeCollectionValue)dmEvent["Attributes"])["IsObserver"]).value;
            DecisionMaker dm = new DecisionMaker(dmID, null); //STUB; need teams info
            dm.role = dmRole;
            dm.color = dmColor;
            dm.briefing = dmBriefing;
            dm.isHuman = !((BooleanValue)((AttributeCollectionValue)dmEvent["Attributes"])["ComputerControlled"]).value;
            if (!allDMs.ContainsKey(dmID))
                allDMs.Add(dmID, dm);
            dm.isObserver = isObserver;
            //SimulationEvent player = SimulationEventFactory.BuildEvent(ref simModelInfo, "PlayerControl");
            //((StringValue)player["DecisionMakerID"]).value = dmID;
            //((StringValue)player["ControlledBy"]).value = "COMPUTER";
            //server.PutEvent(player);

        }