Beispiel #1
0
 internal override void OnPlace(GameClient Session, RoomItem Item)
 {
     Room room = Item.GetRoom();
     switch (Item.GetBaseItem().InteractionType)
     {
         case InteractionType.triggerroomenter:
             {
                 IWiredTrigger handler = new EntersRoom(Item, room.GetWiredHandler(), room.GetRoomUserManager(), false, string.Empty);
                 using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().getQueryreactor())
                     handler.LoadFromDatabase(dbClient, room);
                 break;
             }
         case InteractionType.triggergameend:
             {
                 IWiredTrigger handler = new GameEnds(Item, room.GetWiredHandler(), room.GetGameManager());
                 using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().getQueryreactor())
                     handler.LoadFromDatabase(dbClient, room);
                 break;
             }
         case InteractionType.triggergamestart:
             {
                 IWiredTrigger handler = new GameStarts(Item, room.GetWiredHandler(), room.GetGameManager());
                 using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().getQueryreactor())
                     handler.LoadFromDatabase(dbClient, room);
                 break;
             }
         case InteractionType.triggerrepeater:
             {
                 IWiredTrigger handler = new Repeater(room.GetWiredHandler(), Item, 5000);
                 using (IQueryAdapter dbClient = PlusEnvironment.GetDatabaseManager().getQueryreactor())
                     handler.LoadFromDatabase(dbClient, room);
             }
             break;
     }
 }