public void SessionStart(int sessionId, int numGames, int[] agentsIds, int floorId)
        {
            _id = agentsIds[_nameId - 1];
            Console.WriteLine("EMYS-" + _nameId + "--- " + "My id is " + _id);
            if (_id == 0 || _id == 2)
            {
                _teamId = 0;
            }
            else
            {
                _teamId = 1;
            }
            _numGames      = numGames;
            _currentGameId = 0;
            numRobots      = agentsIds.Length;

            SuecaEvent ev1 = new SuecaEvent(Consts.INIT);

            _suecaRPC.AddSuecaEvent(ev1);
            ev1.OtherStringInfos = new string[] { SubjectName(_id) };

            ev1.AddPropertyChange("Player(" + SubjectName(_id) + ")", Consts.PARTNER, Consts.DEFAULT_SUBJECT);
            ev1.AddPropertyChange("Player(" + SubjectName((_id + 1) % 4) + ")", Consts.OPPONENT, Consts.DEFAULT_SUBJECT);

            ev1.AddPropertyChange("Dialogue(Style)", _agentType, Consts.DEFAULT_SUBJECT);

            ev1.AddPropertyChange(Consts.ID_PROPERTY, _id.ToString(), Consts.DEFAULT_SUBJECT);
            ev1.Finished = true;

            int playerID1 = _randomNumberGenerator.Next(1, 2);
            int playerID2 = ((playerID1 + 1) % 2);

            SuecaPub.GazeAtTarget("player" + playerID1);


            SuecaEvent ev2 = new SuecaEvent(Consts.STATE_SESSION_START);

            _suecaRPC.AddSuecaEvent(ev2);
            ev2.AddPropertyChange(Consts.DIALOGUE_STATE_PROPERTY, Consts.STATE_SESSION_START, Consts.DEFAULT_SUBJECT);
            ev2.AddPropertyChange(Consts.DIALOGUE_FLOOR_PROPERTY, floorId.ToString(), Consts.DEFAULT_SUBJECT);
            ev2.ChangeTagsAndMeanings(new string[] { "|playerID1|", "|playerID2|" }, new string[] { playerID1.ToString(), playerID2.ToString() });
            ev2.Finished = true;
        }
Пример #2
0
        public void SessionStart(int sessionId, int numGames, int[] agentsIds, int shouldGreet)
        {
            _id = agentsIds[_nameId - 1];
            //Console.WriteLine("My id is " + _id);

            SuecaEvent ev = new SuecaEvent(Consts.STATE_SESSION_START);

            _suecaRPC.AddSuecaEvent(ev);
            ev.AddPropertyChange(Consts.DIALOGUE_STATE_PROPERTY, Consts.STATE_SESSION_START, Consts.DEFAULT_SUBJECT);
            ev.Finished = true;
        }