Package games.stendhal.server.entity.player

Examples of games.stendhal.server.entity.player.Player


   * Tests for onDestroyRatWithTargetID.
   */
  @Test
  public final void testOnDestroyRatWithTargetID() {

    final Player pl = PlayerTestHelper.createPlayer("hugo");
    final Creature rat = new RaidCreature(SingletonRepository.getEntityManager().getCreature("rat"));
    final StendhalRPZone testzone = new StendhalRPZone("Testzone");
    testzone.add(rat);
    testzone.add(pl);

    assertEquals(1, rat.getID().getObjectID());
    pl.setAdminLevel(5000);
    pl.clearEvents();

    MockStendhalRPRuleProcessor.get().addPlayer(pl);
    final RPAction action = new RPAction();
    action.put("type", "destroy");
    action.put("target", "#1");

    assertTrue(CommandCenter.execute(pl, action));
    assertEquals("Removed rat creature with ID #1", pl.events().get(0).get("text"));
  }
View Full Code Here


  /**
   * Tests for onInspectRatWithTargetID.
   */
  @Test
  public final void testOnInspectRatWithTargetID() {
    final Player pl = PlayerTestHelper.createPlayer("hugo");
    final Creature rat = new RaidCreature(SingletonRepository.getEntityManager().getCreature("rat"));
    final StendhalRPZone testzone = new StendhalRPZone("Testzone");
    testzone.add(rat);
    testzone.add(pl);

    assertEquals(1, rat.getID().getObjectID());
    pl.setAdminLevel(5000);
    pl.clearEvents();

    MockStendhalRPRuleProcessor.get().addPlayer(pl);
    final RPAction action = new RPAction();
    action.put("type", "inspect");
    action.put("target", "#1");

    assertTrue(CommandCenter.execute(pl, action));
    assertTrue(pl
        .events().get(0).get("text")
        .startsWith(
            "Inspected creature is called \"rat\" and has the following attributes:"));
  }
View Full Code Here

  /**
   * Tests for onSummonAt.
   */
  @Test
  public final void testOnSummonAt() {
    final Player player = PlayerTestHelper.createPlayer("hugo");
    player.setAdminLevel(5000);
    player.clearEvents();

    MockStendhalRPRuleProcessor.get().addPlayer(player);
    final StendhalRPZone testzone = new StendhalRPZone("Testzone");
    testzone.add(player);

    RPAction action = new RPAction();
    action.put("type", "summonat");
    action.put("target", "hugo");
    action.put("slot", "hugo");
    action.put("item", "hugo");

    CommandCenter.execute(player, action);
    assertEquals("Player \"hugo\" does not have an RPSlot named \"hugo\".",
        player.events().get(0).get("text"));
    player.clearEvents();

    action = new RPAction();
    action.put("type", "summonat");
    action.put("target", "hugo");
    action.put("slot", "bag");
    action.put("item", "hugo");

    CommandCenter.execute(player, action);
    assertEquals("hugo is not an item.", player.events().get(0).get("text"));
    player.clearEvents();

    action = new RPAction();
    action.put("type", "summonat");
    action.put("target", "hugo");
    action.put("slot", "bag");
    action.put("item", "dagger");
    assertFalse(player.isEquipped("dagger"));
    CommandCenter.execute(player, action);
    // If the following fails, chances are quite good, the "items.xml" configuration file could not be loaded.
    assertTrue(player.events().isEmpty());
    assertTrue(player.isEquipped("dagger"));
    player.clearEvents();

    action = new RPAction();
    action.put("type", "summonat");
    action.put("target", "noone");
    action.put("slot", "bag");
    action.put("item", "dagger");

    CommandCenter.execute(player, action);
    assertEquals("Player \"noone\" not found.", player.events().get(0).get("text"));
    player.clearEvents();
  }
View Full Code Here

  public void testWithoutCharacter() throws Throwable {
    DBTransaction transaction = TransactionPool.get().beginWork();
    try {
      AccountDAO accountDAO = DAORegister.get().get(AccountDAO.class);
     
      Player player = PlayerTestHelper.createPlayer("bobbby");
      Player admin = PlayerTestHelper.createPlayer("admin");
      RPAction action = new RPAction();
      action.put("type", "ban");
      action.put("target", player.getName());
      action.put("hours",  -1);
      action.put("reason", "Because I can't type the correct name");
      if (!accountDAO.hasPlayer(transaction, player.getName())) {
        accountDAO.addPlayer(transaction, player.getName(), new byte[0], "schnubbel");
      }

      accountDAO.setAccountStatus(transaction, player.getName(), "active");
      if (!accountDAO.hasPlayer(transaction, admin.getName())) {
        accountDAO.addPlayer(transaction, admin.getName(), new byte[0], "schnubbel");
      }
       
      accountDAO.setAccountStatus(transaction, admin.getName(), "active");
 
      assertEquals("active", accountDAO.getAccountStatus(transaction, player.getName()));
      assertEquals("active", accountDAO.getAccountStatus(transaction, admin.getName()));

      TransactionPool.get().commit(transaction);

      assertFalse(CommandCenter.execute(admin , action));
      admin.clearEvents();
      admin.setAdminLevel(5000);
      assertTrue(CommandCenter.execute(admin , action));
     
      transaction = TransactionPool.get().beginWork();
      System.out.println(admin.events().get(0).toString());
      assertFalse("banned".equals(accountDAO.getAccountStatus(transaction, player.getName())));
      assertEquals("active", accountDAO.getAccountStatus(transaction, admin.getName()));
      assertFalse(admin.events().isEmpty());
      assertThat(admin.events().get(0).toString(), containsString("RPEvent private_text with Attributes of Class(private_text): "));
      assertThat(admin.events().get(0).toString(), containsString("[text=No such character]"));
      assertThat(admin.events().get(0).toString(), containsString("[texttype=ERROR]"));
 
      // just undo the changes so the next test starts clean
      TransactionPool.get().rollback(transaction);
    } catch (Throwable e) {
      TransactionPool.get().rollback(transaction);
View Full Code Here

    DBTransaction transaction = TransactionPool.get().beginWork();
    try {
      AccountDAO accountDAO = DAORegister.get().get(AccountDAO.class);
      CharacterDAO characterDAO = DAORegister.get().get(CharacterDAO.class);
     
      Player player = PlayerTestHelper.createPlayer("bobby");
      Player admin = PlayerTestHelper.createPlayer("admin");
      RPAction action = new RPAction();
      action.put("type", "ban");
      action.put("target", player.getName());
      action.put("hours"1);
      action.put("reason", "We want to test the temporary bans");
      if (!accountDAO.hasPlayer(transaction, player.getName())) {
        accountDAO.addPlayer(transaction, player.getName(), new byte[0], "schnubbel");
      }

      accountDAO.setAccountStatus(transaction, player.getName(), "active");
      if (!accountDAO.hasPlayer(transaction, admin.getName())) {
        accountDAO.addPlayer(transaction, admin.getName(), new byte[0], "schnubbel");
      }
      // we do a character check now. Made the the character name and the account name the same
        if (!characterDAO.hasCharacter(transaction, player.getName(), player.getName())) {
        characterDAO.addCharacter(transaction,  player.getName(), player.getName(), player);
        }
       
      accountDAO.setAccountStatus(transaction, admin.getName(), "active");
 
      assertEquals("active", accountDAO.getAccountStatus(transaction, player.getName()));
      assertEquals("active", accountDAO.getAccountStatus(transaction, admin.getName()));

      TransactionPool.get().commit(transaction);

      assertFalse(CommandCenter.execute(admin , action));
      admin.clearEvents();
      admin.setAdminLevel(5000);
      assertTrue(CommandCenter.execute(admin , action));
     
      transaction = TransactionPool.get().beginWork();
      System.out.println(admin.events().get(0).toString());
      assertEquals("active", accountDAO.getAccountStatus(transaction, player.getName()));
      assertEquals("active", accountDAO.getAccountStatus(transaction, admin.getName()));
      assertFalse(admin.events().isEmpty());
      assertThat(admin.events().get(0).toString(), containsString("RPEvent private_text with Attributes of Class(private_text): "));
      // not sure of a good way to reliably test the timestamping
      assertThat(admin.events().get(0).toString(), containsString("[text=You have banned account bobby (character: bobby) until "));
      assertThat(admin.events().get(0).toString(), containsString("for: We want to test the temporary bans"));
      assertThat(admin.events().get(0).toString(), containsString("[texttype=PRIVMSG]"));
 
      // just undo the changes so the next test starts clean
      TransactionPool.get().rollback(transaction);
    } catch (Throwable e) {
      TransactionPool.get().rollback(transaction);
View Full Code Here

  /**
   * Tests for execute.
   */
  @Test
  public void testExecute() throws Exception {
    Player bob = PlayerTestHelper.createPlayer("bob");
    InfoAction info = new InfoAction();
    info.onAction(bob, null);
    assertFalse(bob.events().isEmpty());
    //assertEquals(null,bob.events().get(0));
   
  }
View Full Code Here

   */
  @Test
  public void testOnActionItemInBag() {
    MockStendlRPWorld.get();
    final UseAction ua = new UseAction();
    final Player player = PlayerTestHelper.createPlayer("bob");
    final Item cheese = SingletonRepository.getEntityManager().getItem("cheese");
    player.equip("bag", cheese);
    final StendhalRPZone zone = new StendhalRPZone("zone");
    zone.add(player);
    final RPAction action = new RPAction();
    action.put(BASEITEM, cheese.getID().getObjectID());
    action.put(BASEOBJECT, player.getID().getObjectID());
    action.put(BASESLOT, "bag");
    assertTrue(player.isEquipped("cheese"));
    ua.onAction(player, action);
    assertFalse(player.isEquipped("cheese"));
  }
View Full Code Here

   */
  @Test
  public void testOnActionItemInBagWithTwoCheese() {
    MockStendlRPWorld.get();
    final UseAction ua = new UseAction();
    final Player player = PlayerTestHelper.createPlayer("bob");
    final StackableItem cheese = (StackableItem) SingletonRepository.getEntityManager().getItem("cheese");
    cheese.setQuantity(2);
    player.equip("bag", cheese);
    final StendhalRPZone zone = new StendhalRPZone("zone");
    zone.add(player);
    final RPAction action = new RPAction();
    action.put(BASEITEM, cheese.getID().getObjectID());
    action.put(BASEOBJECT, player.getID().getObjectID());
    action.put(BASESLOT, "bag");
    assertTrue(player.isEquipped("cheese"));
    ua.onAction(player, action);
    assertTrue(player.isEquipped("cheese"));
  }
View Full Code Here

  @Test
  public void testOnActionIteminChest() {
    MockStendlRPWorld.get();
    ChestTestHelper.generateRPClasses();
    final UseAction ua = new UseAction();
    final Player player = PlayerTestHelper.createPlayer("bob");
    final Chest chest = new Chest();
    final Item cheese = SingletonRepository.getEntityManager().getItem("cheese");
    chest.add(cheese);
    final StendhalRPZone zone = new StendhalRPZone("zone");
    zone.collisionMap.clear();
    player.setPosition(1, 1);
    chest.setPosition(1, 2);
    zone.add(player);
    zone.add(chest);
    chest.open();
    final RPAction action = new RPAction();
    action.put(BASEITEM, cheese.getID().getObjectID());
    action.put(BASEOBJECT, chest.getID().getObjectID());
    action.put(BASESLOT, "content");
    assertFalse(player.has("eating"));
    ua.onAction(player, action);
    assertTrue(player.has("eating"));
  }
View Full Code Here

   * Tests for isItemBoundToOtherPlayer.
   */
  @Test
  public void testIsItemBoundToOtherPlayer() {
    final UseAction ua = new UseAction();
    final Player player = PlayerTestHelper.createPlayer("bob");
    final Item cheese = SingletonRepository.getEntityManager().getItem("cheese");
    assertFalse(ua.isItemBoundToOtherPlayer(player, null));
    assertFalse(ua.isItemBoundToOtherPlayer(player, cheese));
    cheese.setBoundTo("jack");

View Full Code Here

TOP

Related Classes of games.stendhal.server.entity.player.Player

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.