👨‍🏭User

Documentação da Classe User

A classe User permite manipular informações e atributos de jogadores, monstros ou NPCs em um servidor de jogos. Esta documentação apresenta as funções de forma clara, intuitiva e com exemplos práticos e concisos para facilitar o uso.


Como Usar a Classe User

  1. Inicialização: Crie um objeto User passando o índice (aIndex) do jogador, monstro ou NPC.

    local player = User.new(aIndex)
  2. Uso de Funções: Use o operador : para chamar as funções, que retornam ou definem atributos específicos.

  3. Observação:

    • Você pode usar a classe para um ou mais índices (ex.: player para um jogador, playerTarget para outro).

    • É possível usar dentro de loops, como em um for.

    • Exemplo com múltiplos índices:

      local player = User.new(aIndex)
      local playerTarget = User.new(TargetIndex)
      player:getName()
      playerTarget:getName()

Funções da Classe User

Abaixo estão todas as funções disponíveis, explicadas de forma simples com exemplos práticos:

1. getIndex()

  • Descrição: Retorna o aIndex do jogador, monstro ou NPC.

  • Exemplo:

    local index = player:getIndex()
    LogAdd(string.format("[User] - Índice do jogador: %d", index), 0)

2. getAccountID()

  • Descrição: Retorna o ID da conta do jogador.

  • Exemplo:

    local accountID = player:getAccountID()
    LogAdd(string.format("[User] - ID da conta: %s", accountID), 0)

3. getName()

  • Descrição: Retorna o nome do jogador.

  • Exemplo:

    local name = player:getName()
    LogAdd(string.format("[User] - Nome do jogador: %s", name), 0)

4. getConnected()

  • Descrição: Retorna o estado de conexão: 0 = Offline, 1 = Conectado, 2 = Logado, 3 = Online.

  • Exemplo:

    local status = player:getConnected()
    LogAdd(string.format("[User] - Estado de conexão: %d", status), 0)

5. getLive()

  • Descrição: Retorna 1 se o jogador está vivo, ou 0 caso contrário.

  • Exemplo:

    if player:getLive() == 1 then
        LogAdd("[User] - Jogador está vivo!", 0)
    end

6. getType()

  • Descrição: Retorna o tipo: 0 = nenhum, 1 = usuário, 2 = monstro, 3 = NPC.

  • Exemplo:

    local type = player:getType()
    LogAdd(string.format("[User] - Tipo: %d", type), 0)

7. getClass()

  • Descrição: Retorna a classe do jogador ou o número do monstro no monster.txt.

  • Exemplo:

    local class = player:getClass()
    LogAdd(string.format("[User] - Classe: %d", class), 0)

8. setClass(value)

  • Descrição: Define a classe do jogador ou monstro.

  • Exemplo:

    player:setClass(2)
    LogAdd("[User] - Classe definida para 2", 0)

9. getDbClass()

  • Descrição: Retorna a classe do banco de dados.

  • Exemplo:

    local dbClass = player:getDbClass()
    LogAdd(string.format("[User] - Classe do banco de dados: %d", dbClass), 0)

10. setDbClass(value)

  • Descrição: Define a classe do banco de dados.

  • Exemplo:

    player:setDbClass(3)
    LogAdd("[User] - Classe do banco de dados definida para 3", 0)

11. getChangeUP()

  • Descrição: Retorna a mudança de classe do jogador.

  • Exemplo:

    local changeUp = player:getChangeUP()
    LogAdd(string.format("[User] - Mudança de classe: %d", changeUp), 0)

12. setChangeUP(value)

  • Descrição: Define a mudança de classe.

  • Exemplo:

    player:setChangeUP(1)
    LogAdd("[User] - Mudança de classe definida para 1", 0)

13. getLevel()

  • Descrição: Retorna o nível do jogador.

  • Exemplo:

    local level = player:getLevel()
    LogAdd(string.format("[User] - Nível: %d", level), 0)

14. setLevel(value)

  • Descrição: Define o nível do jogador.

  • Exemplo:

    player:setLevel(50)
    LogAdd("[User] - Nível definido para 50", 0)

15. getLevelUpPoint()

  • Descrição: Retorna os pontos de nível disponíveis.

  • Exemplo:

    local points = player:getLevelUpPoint()
    LogAdd(string.format("[User] - Pontos de nível: %d", points), 0)

16. setLevelUpPoint(value)

  • Descrição: Define os pontos de nível.

  • Exemplo:

    player:setLevelUpPoint(10)
    LogAdd("[User] - Pontos de nível definidos para 10", 0)

17. getMoney()

  • Descrição: Retorna o dinheiro do jogador.

  • Exemplo:

    local money = player:getMoney()
    LogAdd(string.format("[User] - Dinheiro: %d", money), 0)

18. setMoney(value)

  • Descrição: Define o dinheiro do jogador.

  • Exemplo:

    player:setMoney(10000)
    LogAdd("[User] - Dinheiro definido para 10000", 0)

19. getStrength()

  • Descrição: Retorna a força do jogador.

  • Exemplo:

    local strength = player:getStrength()
    LogAdd(string.format("[User] - Força: %d", strength), 0)

20. setStrength(value)

  • Descrição: Define a força do jogador.

  • Exemplo:

    player:setStrength(200)
    LogAdd("[User] - Força definida para 200", 0)

21. getDexterity()

  • Descrição: Retorna a destreza do jogador.

  • Exemplo:

    local dexterity = player:getDexterity()
    LogAdd(string.format("[User] - Destreza: %d", dexterity), 0)

22. setDexterity(value)

  • Descrição: Define a destreza do jogador.

  • Exemplo:

    player:setDexterity(150)
    LogAdd("[User] - Destreza definida para 150", 0)

23. getVitality()

  • Descrição: Retorna a vitalidade do jogador.

  • Exemplo:

    local vitality = player:getVitality()
    LogAdd(string.format("[User] - Vitalidade: %d", vitality), 0)

24. setVitality(value)

  • Descrição: Define a vitalidade do jogador.

  • Exemplo:

    player:setVitality(100)
    LogAdd("[User] - Vitalidade definida para 100", 0)

25. getEnergy()

  • Descrição: Retorna a energia do jogador.

  • Exemplo:

    local energy = player:getEnergy()
    LogAdd(string.format("[User] - Energia: %d", energy), 0)

26. setEnergy(value)

  • Descrição: Define a energia do jogador.

  • Exemplo:

    player:setEnergy(120)
    LogAdd("[User] - Energia definida para 120", 0)

27. getLeaderShip()

  • Descrição: Retorna a liderança do jogador.

  • Exemplo:

    local leadership = player:getLeaderShip()
    LogAdd(string.format("[User] - Liderança: %d", leadership), 0)

28. setLeaderShip(value)

  • Descrição: Define a liderança do jogador.

  • Exemplo:

    player:setLeaderShip(50)
    LogAdd("[User] - Liderança definida para 50", 0)

29. getPKCount()

  • Descrição: Retorna a contagem de PK (Player Kill) do jogador.

  • Exemplo:

    local pkCount = player:getPKCount()
    LogAdd(string.format("[User] - Contagem de PK: %d", pkCount), 0)

30. setPKCount(value)

  • Descrição: Define a contagem de PK.

  • Exemplo:

    player:setPKCount(0)
    LogAdd("[User] - Contagem de PK definida para 0", 0)

31. getPKLevel()

  • Descrição: Retorna o nível de PK do jogador.

  • Exemplo:

    local pkLevel = player:getPKLevel()
    LogAdd(string.format("[User] - Nível de PK: %d", pkLevel), 0)

32. setPKLevel(value)

  • Descrição: Define o nível de PK.

  • Exemplo:

    player:setPKLevel(1)
    LogAdd("[User] - Nível de PK definido para 1", 0)

33. getPKTime()

  • Descrição: Retorna o tempo de PK do jogador.

  • Exemplo:

    local pkTime = player:getPKTime()
    LogAdd(string.format("[User] - Tempo de PK: %d", pkTime), 0)

34. setPKTime(value)

  • Descrição: Define o tempo de PK.

  • Exemplo:

    player:setPKTime(0)
    LogAdd("[User] - Tempo de PK definido para 0", 0)

35. getX()

  • Descrição: Retorna a posição X do jogador no mapa.

  • Exemplo:

    local x = player:getX()
    LogAdd(string.format("[User] - Posição X: %d", x), 0)

36. setX(value)

  • Descrição: Define a posição X do jogador no mapa.

  • Exemplo:

    player:setX(100)
    LogAdd("[User] - Posição X definida para 100", 0)

37. getY()

  • Descrição: Retorna a posição Y do jogador no mapa.

  • Exemplo:

    local y = player:getY()
    LogAdd(string.format("[User] - Posição Y: %d", y), 0)

38. setY(value)

  • Descrição: Define a posição Y do jogador no mapa.

  • Exemplo:

    player:setY(150)
    LogAdd("[User] - Posição Y definida para 150", 0)

39. getTX()

  • Descrição: Retorna a posição TX do jogador.

  • Exemplo:

    local tx = player:getTX()
    LogAdd(string.format("[User] - Posição TX: %d", tx), 0)

40. setTX(value)

  • Descrição: Define a posição TX do jogador.

  • Exemplo:

    player:setTX(200)
    LogAdd("[User] - Posição TX definida para 200", 0)

41. getTY()

  • Descrição: Retorna a posição TY do jogador.

  • Exemplo:

    local ty = player:getTY()
    LogAdd(string.format("[User] - Posição TY: %d", ty), 0)

42. setTY(value)

  • Descrição: Define a posição TY do jogador.

  • Exemplo:

    player:setTY(250)
    LogAdd("[User] - Posição TY definida para 250", 0)

43. getMTX()

  • Descrição: Retorna a posição MTX do jogador.

  • Exemplo:

    local mtx = player:getMTX()
    LogAdd(string.format("[User] - Posição MTX: %d", mtx), 0)

44. setMTX(value)

  • Descrição: Define a posição MTX do jogador.

  • Exemplo:

    player:setMTX(300)
    LogAdd("[User] - Posição MTX definida para 300", 0)

45. getMTY()

  • Descrição: Retorna a posição MTY do jogador.

  • Exemplo:

    local mty = player:getMTY()
    LogAdd(string.format("[User] - Posição MTY: %d", mty), 0)

46. setMTY(value)

  • Descrição: Define a posição MTY do jogador.

  • Exemplo:

    player:setMTY(350)
    LogAdd("[User] - Posição MTY definida para 350", 0)

47. getMapNumber()

  • Descrição: Retorna o número do mapa onde o jogador está.

  • Exemplo:

    local map = player:getMapNumber()
    LogAdd(string.format("[User] - Número do mapa: %d", map), 0)

48. setMapNumber(value)

  • Descrição: Define o número do mapa.

  • Exemplo:

    player:setMapNumber(1)
    LogAdd("[User] - Mapa definido para 1", 0)

49. getAuthority()

  • Descrição: Retorna a autoridade do jogador.

  • Exemplo:

    local authority = player:getAuthority()
    LogAdd(string.format("[User] - Autoridade: %d", authority), 0)

50. setAuthority(value)

  • Descrição: Define a autoridade do jogador.

  • Exemplo:

    player:setAuthority(2)
    LogAdd("[User] - Autoridade definida para 2", 0)

51. getAuthorityCode()

  • Descrição: Retorna o código de autoridade do jogador.

  • Exemplo:

    local authCode = player:getAuthorityCode()
    LogAdd(string.format("[User] - Código de autoridade: %d", authCode), 0)

52. setAuthorityCode(value)

  • Descrição: Define o código de autoridade.

  • Exemplo:

    player:setAuthorityCode(1)
    LogAdd("[User] - Código de autoridade definido para 1", 0)

53. getSkin()

  • Descrição: Retorna o número da skin do jogador.

  • Exemplo:

    local skin = player:getSkin()
    LogAdd(string.format("[User] - Skin: %d", skin), 0)

54. setSkin(value)

  • Descrição: Define o número da skin do jogador.

  • Exemplo:

    player:setSkin(5)
    LogAdd("[User] - Skin definida para 5", 0)

55. getExp()

  • Descrição: Retorna a experiência atual do jogador.

  • Exemplo:

    local exp = player:getExp()
    LogAdd(string.format("[User] - Experiência: %d", exp), 0)

56. setExp(value)

  • Descrição: Define a experiência do jogador.

  • Exemplo:

    player:setExp(1000)
    LogAdd("[User] - Experiência definida para 1000", 0)

57. getTargetState(viewport_ID)

  • Descrição: Retorna o estado do alvo na área de visão do jogador.

  • Exemplo:

    local state = player:getTargetState(1)
    LogAdd(string.format("[User] - Estado do alvo (viewport 1): %d", state), 0)

58. getTargetNumber(viewport_ID)

  • Descrição: Retorna o aIndex do alvo na área de visão.

  • Exemplo:

    local targetIndex = player:getTargetNumber(1)
    LogAdd(string.format("[User] - Índice do alvo (viewport 1): %d", targetIndex), 0)

59. getTargetType(viewport_ID)

  • Descrição: Retorna o tipo do alvo na área de visão.

  • Exemplo:

    local targetType = player:getTargetType(1)
    LogAdd(string.format("[User] - Tipo do alvo (viewport 1): %d", targetType), 0)

60. getInterfaceUse()

  • Descrição: Retorna 1 se a interface está em uso.

  • Exemplo:

    if player:getInterfaceUse() == 1 then
        LogAdd("[User] - Interface em uso!", 0)
    end

61. setInterfaceUse(value)

  • Descrição: Define o uso da interface.

  • Exemplo:

    player:setInterfaceUse(1)
    LogAdd("[User] - Interface definida como em uso", 0)

62. getInterfaceState()

  • Descrição: Retorna o estado da interface.

  • Exemplo:

    local state = player:getInterfaceState()
    LogAdd(string.format("[User] - Estado da interface: %d", state), 0)

63. setInterfaceState(value)

  • Descrição: Define o estado da interface.

  • Exemplo:

    player:setInterfaceState(2)
    LogAdd("[User] - Estado da interface definido para 2", 0)

64. getInterfaceType()

  • Descrição: Retorna o tipo de interface aberta.

  • Exemplo:

    local interfaceType = player:getInterfaceType()
    LogAdd(string.format("[User] - Tipo de interface: %d", interfaceType), 0)

65. setInterfaceType(value)

  • Descrição: Define o tipo de interface.

  • Exemplo:

    player:setInterfaceType(3)
    LogAdd("[User] - Tipo de interface definido para 3", 0)

66. getDefense()

  • Descrição: Retorna o valor da defesa do jogador.

  • Exemplo:

    local defense = player:getDefense()
    LogAdd(string.format("[User] - Defesa: %d", defense), 0)

67. setDefense(value)

  • Descrição: Define o valor da defesa.

  • Exemplo:

    player:setDefense(500)
    LogAdd("[User] - Defesa definida para 500", 0)

68. getDefensePvP()

  • Descrição: Retorna o valor da defesa PvP do jogador.

  • Exemplo:

    local defensePvP = player:getDefensePvP()
    LogAdd(string.format("[User] - Defesa PvP: %d", defensePvP), 0)

69. setDefensePvP(value)

  • Descrição: Define o valor da defesa PvP.

  • Exemplo:

    player:setDefensePvP(300)
    LogAdd("[User] - Defesa PvP definida para 300", 0)

70. getSuccessBlock()

  • Descrição: Retorna a defesa de sucesso do jogador.

  • Exemplo:

    local successBlock = player:getSuccessBlock()
    LogAdd(string.format("[User] - Defesa de sucesso: %d", successBlock), 0)

71. setSuccessBlock(value)

  • Descrição: Define a defesa de sucesso.

  • Exemplo:

    player:setSuccessBlock(50)
    LogAdd("[User] - Defesa de sucesso definida para 50", 0)

72. getSuccessBlockPvP()

  • Descrição: Retorna a defesa de sucesso PvP do jogador.

  • Exemplo:

    local successBlockPvP = player:getSuccessBlockPvP()
    LogAdd(string.format("[User] - Defesa de sucesso PvP: %d", successBlockPvP), 0)

73. setSuccessBlockPvP(value)

  • Descrição: Define a defesa de sucesso PvP.

  • Exemplo:

    player:setSuccessBlockPvP(60)
    LogAdd("[User] - Defesa de sucesso PvP definida para 60", 0)

74. getState()

  • Descrição: Retorna o estado do jogador.

  • Exemplo:

    local state = player:getState()
    LogAdd(string.format("[User] - Estado: %d", state), 0)

75. setState(value)

  • Descrição: Define o estado do jogador.

  • Exemplo:

    player:setState(1)
    LogAdd("[User] - Estado definido para 1", 0)

76. getDieRegen()

  • Descrição: Retorna se o jogador está morto.

  • Exemplo:

    if player:getDieRegen() == 1 then
        LogAdd("[User] - Jogador está morto!", 0)
    end

77. setDieRegen(value)

  • Descrição: Define se o jogador está morto.

  • Exemplo:

    player:setDieRegen(0)
    LogAdd("[User] - Jogador definido como vivo", 0)

78. getTeleport()

  • Descrição: Retorna se o jogador está teleportando.

  • Exemplo:

    if player:getTeleport() == 1 then
        LogAdd("[User] - Jogador está teleportando!", 0)
    end

79. setTeleport(value)

  • Descrição: Define se o jogador está teleportando.

  • Exemplo:

    player:setTeleport(0)
    LogAdd("[User] - Teleporte definido como desativado", 0)

80. getTargetShopNumber()

  • Descrição: Retorna o número da loja do NPC.

  • Exemplo:

    local shopNumber = player:getTargetShopNumber()
    LogAdd(string.format("[User] - Número da loja: %d", shopNumber), 0)

81. setTargetShopNumber(value)

  • Descrição: Define o número da loja do NPC.

  • Exemplo:

    player:setTargetShopNumber(1)
    LogAdd("[User] - Número da loja definido para 1", 0)

82. getReqWarehouseOpen()

  • Descrição: Retorna 1 se o armazém está aberto.

  • Exemplo:

    if player:getReqWarehouseOpen() == 1 then
        LogAdd("[User] - Armazém está aberto!", 0)
    end

83. setReqWarehouseOpen(value)

  • Descrição: Define se o armazém está aberto.

  • Exemplo:

    player:setReqWarehouseOpen(0)
    LogAdd("[User] - Armazém definido como fechado", 0)

84. getWarehouseCount()

  • Descrição: Retorna o número de armazéns.

  • Exemplo:

    local count = player:getWarehouseCount()
    LogAdd(string.format("[User] - Número de armazéns: %d", count), 0)

85. setWarehouseCount(value)

  • Descrição: Define o número de armazéns.

  • Exemplo:

    player:setWarehouseCount(2)
    LogAdd("[User] - Número de armazéns definido para 2", 0)

86. getDir()

  • Descrição: Retorna a direção do jogador.

  • Exemplo:

    local dir = player:getDir()
    LogAdd(string.format("[User] - Direção: %d", dir), 0)

87. setDir(value)

  • Descrição: Define a direção do jogador.

  • Exemplo:

    player:setDir(3)
    LogAdd("[User] - Direção definida para 3", 0)

88. getNextExp()

  • Descrição: Retorna a experiência necessária para o próximo nível.

  • Exemplo:

    local nextExp = player:getNextExp()
    LogAdd(string.format("[User] - Experiência para próximo nível: %d", nextExp), 0)

89. setNextExp(value)

  • Descrição: Define a experiência necessária para o próximo nível.

  • Exemplo:

    player:setNextExp(5000)
    LogAdd("[User] - Experiência para próximo nível definida para 5000", 0)

90. getLife()

  • Descrição: Retorna a vida atual do jogador.

  • Exemplo:

    local life = player:getLife()
    LogAdd(string.format("[User] - Vida atual: %d", life), 0)

91. setLife(value)

  • Descrição: Define a vida atual do jogador.

  • Exemplo:

    player:setLife(1000)
    LogAdd("[User] - Vida definida para 1000", 0)

92. getMana()

  • Descrição: Retorna o mana atual do jogador.

  • Exemplo:

    local mana = player:getMana()
    LogAdd(string.format("[User] - Mana atual: %d", mana), 0)

93. setMana(value)

  • Descrição: Define o mana atual do jogador.

  • Exemplo:

    player:setMana(500)
    LogAdd("[User] - Mana definido para 500", 0)

94. getMaxLife()

  • Descrição: Retorna a vida máxima do jogador.

  • Exemplo:

    local maxLife = player:getMaxLife()
    LogAdd(string.format("[User] - Vida máxima: %d", maxLife), 0)

95. setMaxLife(value)

  • Descrição: Define a vida máxima do jogador.

  • Exemplo:

    player:setMaxLife(1500)
    LogAdd("[User] - Vida máxima definida para 1500", 0)

96. getMaxMana()

  • Descrição: Retorna o mana máximo do jogador.

  • Exemplo:

    local maxMana = player:getMaxMana()
    LogAdd(string.format("[User] - Mana máximo: %d", maxMana), 0)

97. setMaxMana(value)

  • Descrição: Define o mana máximo do jogador.

  • Exemplo:

    player:setMaxMana(800)
    LogAdd("[User] - Mana máximo definido para 800", 0)

98. getBP()

  • Descrição: Retorna o BP (Battle Power) atual do jogador.

  • Exemplo:

    local bp = player:getBP()
    LogAdd(string.format("[User] - BP atual: %d", bp), 0)

99. setBP(value)

  • Descrição: Define o BP atual do jogador.

  • Exemplo:

    player:setBP(200)
    LogAdd("[User] - BP definido para 200", 0)

100. getMaxBP()

  • Descrição: Retorna o BP máximo do jogador.

  • Exemplo:

    local maxBP = player:getMaxBP()
    LogAdd(string.format("[User] - BP máximo: %d", maxBP), 0)

101. setMaxBP(value)

  • Descrição: Define o BP máximo do jogador.

  • Exemplo:

    player:setMaxBP(300)
    LogAdd("[User] - BP máximo definido para 300", 0)

102. getShield()

  • Descrição: Retorna o escudo atual do jogador.

  • Exemplo:

    local shield = player:getShield()
    LogAdd(string.format("[User] - Escudo atual: %d", shield), 0)

103. setShield(value)

  • Descrição: Define o escudo atual do jogador.

  • Exemplo:

    player:setShield(400)
    LogAdd("[User] - Escudo definido para 400", 0)

104. getMaxShield()

  • Descrição: Retorna o escudo máximo do jogador.

  • Exemplo:

    local maxShield = player:getMaxShield()
    LogAdd(string.format("[User] - Escudo máximo: %d", maxShield), 0)

105. setMaxShield(value)

  • Descrição: Define o escudo máximo do jogador.

  • Exemplo:

    player:setMaxShield(500)
    LogAdd("[User] - Escudo máximo definido para 500", 0)

106. getVitalityToLife()

  • Descrição: Retorna a conversão de vitalidade em vida.

  • Exemplo:

    local vitalityToLife = player:getVitalityToLife()
    LogAdd(string.format("[User] - Vitalidade para vida: %d", vitalityToLife), 0)

107. setVitalityToLife(value)

  • Descrição: Define a conversão de vitalidade em vida.

  • Exemplo:

    player:setVitalityToLife(10)
    LogAdd("[User] - Vitalidade para vida definida para 10", 0)

108. getEnergyToMana()

  • Descrição: Retorna a conversão de energia em mana.

  • Exemplo:

    local energyToMana = player:getEnergyToMana()
    LogAdd(string.format("[User] - Energia para mana: %d", energyToMana), 0)

109. setEnergyToMana(value)

  • Descrição: Define a conversão de energia em mana.

  • Exemplo:

    player:setEnergyToMana(8)
    LogAdd("[User] - Energia para mana definida para 8", 0)

110. getOption()

  • Descrição: Retorna as opções do jogador (ex.: comércio, party).

  • Exemplo:

    local option = player:getOption()
    LogAdd(string.format("[User] - Opções: %d", option), 0)

111. setOption(value)

  • Descrição: Define as opções do jogador.

  • Exemplo:

    player:setOption(1)
    LogAdd("[User] - Opções definidas para 1", 0)

112. getAddLife()

  • Descrição: Retorna a vida adicional do jogador.

  • Exemplo:

    local addLife = player:getAddLife()
    LogAdd(string.format("[User] - Vida adicional: %d", addLife), 0)

113. setAddLife(value)

  • Descrição: Define a vida adicional do jogador.

  • Exemplo:

    player:setAddLife(200)
    LogAdd("[User] - Vida adicional definida para 200", 0)

114. getAddMana()

  • Descrição: Retorna o mana adicional do jogador.

  • Exemplo:

    local addMana = player:getAddMana()
    LogAdd(string.format("[User] - Mana adicional: %d", addMana), 0)

115. setAddMana(value)

  • Descrição: Define o mana adicional do jogador.

  • Exemplo:

    player:setAddMana(150)
    LogAdd("[User] - Mana adicional definido para 150", 0)

116. getAddBP()

  • Descrição: Retorna o BP adicional do jogador.

  • Exemplo:

    local addBP = player:getAddBP()
    LogAdd(string.format("[User] - BP adicional: %d", addBP), 0)

117. setAddBP(value)

  • Descrição: Define o BP adicional do jogador.

  • Exemplo:

    player:setAddBP(100)
    LogAdd("[User] - BP adicional definido para 100", 0)

118. getAttackSpeed()

  • Descrição: Retorna a velocidade de ataque do jogador.

  • Exemplo:

    local attackSpeed = player:getAttackSpeed()
    LogAdd(string.format("[User] - Velocidade de ataque: %d", attackSpeed), 0)

119. setAttackSpeed(value)

  • Descrição: Define a velocidade de ataque do jogador.

  • Exemplo:

    player:setAttackSpeed(50)
    LogAdd("[User] - Velocidade de ataque definida para 50", 0)

120. getMagicSpeed()

  • Descrição: Retorna a velocidade de magia do jogador.

  • Exemplo:

    local magicSpeed = player:getMagicSpeed()
    LogAdd(string.format("[User] - Velocidade de magia: %d", magicSpeed), 0)

121. setMagicSpeed(value)

  • Descrição: Define a velocidade de magia do jogador.

  • Exemplo:

    player:setMagicSpeed(60)
    LogAdd("[User] - Velocidade de magia definida para 60", 0)

122. getMagicDamageMin()

  • Descrição: Retorna o dano mínimo de magia.

  • Exemplo:

    local magicDamageMin = player:getMagicDamageMin()
    LogAdd(string.format("[User] - Dano mínimo de magia: %d", magicDamageMin), 0)

123. setMagicDamageMin(value)

  • Descrição: Define o dano mínimo de magia.

  • Exemplo:

    player:setMagicDamageMin(100)
    LogAdd("[User] - Dano mínimo de magia definido para 100", 0)

124. getMagicDamageMax()

  • Descrição: Retorna o dano máximo de magia.

  • Exemplo:

    local magicDamageMax = player:getMagicDamageMax()
    LogAdd(string.format("[User] - Dano máximo de magia: %d", magicDamageMax), 0)

125. setMagicDamageMax(value)

  • Descrição: Define o dano máximo de magia.

  • Exemplo:

    player:setMagicDamageMax(200)
    LogAdd("[User] - Dano máximo de magia definido para 200", 0)

126. getAttackDamageMinLeft()

  • Descrição: Retorna o dano mínimo de ataque à esquerda.

  • Exemplo:

    local attackMinLeft = player:getAttackDamageMinLeft()
    LogAdd(string.format("[User] - Dano mínimo de ataque à esquerda: %d", attackMinLeft), 0)

127. setAttackDamageMinLeft(value)

  • Descrição: Define o dano mínimo de ataque à esquerda.

  • Exemplo:

    player:setAttackDamageMinLeft(150)
    LogAdd("[User] - Dano mínimo de ataque à esquerda definido para 150", 0)

128. getAttackDamageMaxLeft()

  • Descrição: Retorna o dano máximo de ataque à esquerda.

  • Exemplo:

    local attackMaxLeft = player:getAttackDamageMaxLeft()
    LogAdd(string.format("[User] - Dano máximo de ataque à esquerda: %d", attackMaxLeft), 0)

129. setAttackDamageMaxLeft(value)

  • Descrição: Define o dano máximo de ataque à esquerda.

  • Exemplo:

    player:setAttackDamageMaxLeft(250)
    LogAdd("[User] - Dano máximo de ataque à esquerda definido para 250", 0)

130. getAttackDamageMinRight()

  • Descrição: Retorna o dano mínimo de ataque à direita.

  • Exemplo:

    local attackMinRight = player:getAttackDamageMinRight()
    LogAdd(string.format("[User] - Dano mínimo de ataque à direita: %d", attackMinRight), 0)

131. setAttackDamageMinRight(value)

  • Descrição: Define o dano mínimo de ataque à direita.

  • Exemplo:

    player:setAttackDamageMinRight(160)
    LogAdd("[User] - Dano mínimo de ataque à direita definido para 160", 0)

132. getAttackDamageMaxRight()

  • Descrição: Retorna o dano máximo de ataque à direita.

  • Exemplo:

    local attackMaxRight = player:getAttackDamageMaxRight()
    LogAdd(string.format("[User] - Dano máximo de ataque à direita: %d", attackMaxRight), 0)

133. setAttackDamageMaxRight(value)

  • Descrição: Define o dano máximo de ataque à direita.

  • Exemplo:

    player:setAttackDamageMaxRight(260)
    LogAdd("[User] - Dano máximo de ataque à direita definido para 260", 0)

134. getRegenTime()

  • Descrição: Retorna o tempo de regeneração do jogador.

  • Exemplo:

    local regenTime = player:getRegenTime()
    LogAdd(string.format("[User] - Tempo de regeneração: %d", regenTime), 0)

135. setRegenTime(value)

  • Descrição: Define o tempo de regeneração do jogador.

  • Exemplo:

    player:setRegenTime(30)
    LogAdd("[User] - Tempo de regeneração definido para 30", 0)

136. getViewSkillState()

  • Descrição: Retorna o estado da skill visual (funciona bem apenas na temporada 2).

  • Exemplo:

    local skillState = player:getViewSkillState()
    LogAdd(string.format("[User] - Estado da skill visual: %d", skillState), 0)

137. setViewSkillState(value)

  • Descrição: Define o estado da skill visual.

  • Exemplo:

    player:setViewSkillState(1)
    LogAdd("[User] - Estado da skill visual definido para 1", 0)

138. getGetRegen()

  • Descrição: Retorna se a regeneração está ativa.

  • Exemplo:

    if player:getGetRegen() == 1 then
        LogAdd("[User] - Regeneração ativa!", 0)
    end

139. setGetRegen(value)

  • Descrição: Define se a regeneração está ativa.

  • Exemplo:

    player:setGetRegen(1)
    LogAdd("[User] - Regeneração definida como ativa", 0)

140. getMagicSkill()

  • Descrição: Retorna a habilidade mágica em uso.

  • Exemplo:

    local magicSkill = player:getMagicSkill()
    LogAdd(string.format("[User] - Habilidade mágica: %d", magicSkill), 0)

141. setMagicSkill(value)

  • Descrição: Define a habilidade mágica em uso.

  • Exemplo:

    player:setMagicSkill(5)
    LogAdd("[User] - Habilidade mágica definida para 5", 0)

142. getKillerType()

  • Descrição: Retorna o tipo de matador.

  • Exemplo:

    local killerType = player:getKillerType()
    LogAdd(string.format("[User] - Tipo de matador: %d", killerType), 0)

143. setKillerType(value)

  • Descrição: Define o tipo de matador.

  • Exemplo:

    player:setKillerType(1)
    LogAdd("[User] - Tipo de matador definido para 1", 0)

144. getConnectCheckTime()

  • Descrição: Retorna o tempo de verificação de conexão.

  • Exemplo:

    local connectTime = player:getConnectCheckTime()
    LogAdd(string.format("[User] - Tempo de verificação de conexão: %d", connectTime), 0)

145. setConnectCheckTime(value)

  • Descrição: Define o tempo de verificação de conexão.

  • Exemplo:

    player:setConnectCheckTime(60)
    LogAdd("[User] - Tempo de verificação de conexão definido para 60", 0)

146. getCheckSumTime()

  • Descrição: Retorna o tempo de verificação de checksum.

  • Exemplo:

    local checksumTime = player:getCheckSumTime()
    LogAdd(string.format("[User] - Tempo de verificação de checksum: %d", checksumTime), 0)

147. setCheckSumTime(value)

  • Descrição: Define o tempo de verificação de checksum.

  • Exemplo:

    player:setCheckSumTime(30)
    LogAdd("[User] - Tempo de verificação de checksum definido para 30", 0)

148. getPathCount()

  • Descrição: Retorna a contagem de caminhos do jogador.

  • Exemplo:

    local pathCount = player:getPathCount()
    LogAdd(string.format("[User] - Contagem de caminhos: %d", pathCount), 0)

149. setPathCount(value)

  • Descrição: Define a contagem de caminhos.

  • Exemplo:

    player:setPathCount(5)
    LogAdd("[User] - Contagem de caminhos definida para 5", 0)

150. getPathNextX()

  • Descrição: Retorna o próximo valor de caminho X.

  • Exemplo:

    local pathNextX = player:getPathNextX()
    LogAdd(string.format("[User] - Próximo caminho X: %d", pathNextX), 0)

151. setPathNextX(value)

  • Descrição: Define o próximo valor de caminho X.

  • Exemplo:

    player:setPathNextX(120)
    LogAdd("[User] - Próximo caminho X definido para 120", 0)

152. getPathNextY()

  • Descrição: Retorna o próximo valor de caminho Y.

  • Exemplo:

    local pathNextY = player:getPathNextY()
    LogAdd(string.format("[User] - Próximo caminho Y: %d", pathNextY), 0)

153. setPathNextY(value)

  • Descrição: Define o próximo valor de caminho Y.

  • Exemplo:

    player:setPathNextY(130)
    LogAdd("[User] - Próximo caminho Y definido para 130", 0)

154. getPathNextMapNumber()

  • Descrição: Retorna o próximo número de mapa.

  • Exemplo:

    local nextMap = player:getPathNextMapNumber()
    LogAdd(string.format("[User] - Próximo número de mapa: %d", nextMap), 0)

155. setPathNextMapNumber(value)

  • Descrição: Define o próximo número de mapa.

  • Exemplo:

    player:setPathNextMapNumber(2)
    LogAdd("[User] - Próximo número de mapa definido para 2", 0)

156. getPathNextState()

  • Descrição: Retorna o próximo estado de caminho.

  • Exemplo:

    local nextState = player:getPathNextState()
    LogAdd(string.format("[User] - Próximo estado de caminho: %d", nextState), 0)

157. setPathNextState(value)

  • Descrição: Define o próximo estado de caminho.

  • Exemplo:

    player:setPathNextState(1)
    LogAdd("[User] - Próximo estado de caminho definido para 1", 0)

158. getAddDefense()

  • Descrição: Retorna a defesa adicional do jogador.

  • Exemplo:

    local addDefense = player:getAddDefense()
    LogAdd(string.format("[User] - Defesa adicional: %d", addDefense), 0)

159. setAddDefense(value)

  • Descrição: Define a defesa adicional do jogador.

  • Exemplo:

    player:setAddDefense(100)
    LogAdd("[User] - Defesa adicional definida para 100", 0)

160. getAddDamage()

  • Descrição: Retorna o dano adicional do jogador.

  • Exemplo:

    local addDamage = player:getAddDamage()
    LogAdd(string.format("[User] - Dano adicional: %d", addDamage), 0)

161. setAddDamage(value)

  • Descrição: Define o dano adicional do jogador.

  • Exemplo:

    player:setAddDamage(200)
    LogAdd("[User] - Dano adicional definido para 200", 0)

Exemplo Prático Completo

Abaixo está um exemplo fictício que utiliza várias funções da classe User em uma única função para verificar e modificar atributos de um jogador. Este código pode ser usado como base para manipulações de jogadores.

-- Sistema de gerenciamento de jogadores
PLAYER_MANAGER = {}

function PLAYER_MANAGER.ProcessPlayer(aIndex)
    -- Cria um objeto User para o jogador
    local player = User.new(aIndex)
    local playerName = player:getName()

    -- Verifica informações básicas do jogador
    local level = player:getLevel()
    local class = player:getClass()
    local life = player:getLife()
    local mana = player:getMana()
    local map = player:getMapNumber()
    local x = player:getX()
    local y = player:getY()

    -- Exibe informações do jogador
    LogAdd(string.format("[PlayerManager] - [%s] Nível: %d, Classe: %d, Vida: %d, Mana: %d, Mapa: %d, Posição: (%d, %d)",
        playerName, level, class, life, mana, map, x, y), 0)

    -- Verifica se o jogador está vivo
    if player:getLive() == 1 then
        LogAdd(string.format("[PlayerManager] - [%s] Jogador está vivo!", playerName), 0)
    else
        LogAdd(string.format("[PlayerManager] - [%s] Jogador está morto!", playerName), 0)
    end

    -- Modifica atributos do jogador
    player:setLife(1000) -- Define vida
    player:setMana(500) -- Define mana
    player:setStrength(200) -- Define força
    player:setDexterity(150) -- Define destreza
    player:setMoney(10000) -- Define dinheiro

    -- Exibe alterações
    LogAdd(string.format("[PlayerManager] - [%s] Atributos modificados: Vida=1000, Mana=500, Força=200, Destreza=150, Dinheiro=10000", playerName), 0)

    -- Verifica interface
    if player:getInterfaceUse() == 1 then
        local interfaceType = player:getInterfaceType()
        LogAdd(string.format("[PlayerManager] - [%s] Interface em uso, tipo: %d", playerName, interfaceType), 0)
    end
end

-- Exemplo de chamada da função
PLAYER_MANAGER.ProcessPlayer(100) -- Substitua 100 pelo aIndex do jogador

return PLAYER_MANAGER

Resumo

  • A classe User oferece um conjunto abrangente de funções para manipular atributos de jogadores, monstros ou NPCs, como vida, mana, posição, defesa, ataque e muito mais.

  • Use o operador : para chamar as funções, que retornam ou definem valores específicos.

  • O exemplo prático mostra como verificar e modificar atributos de um jogador, incluindo verificações de estado e interface.

Last updated