Ir para conteúdo

Biinhow

Membro
  • Registro em

Tudo que Biinhow postou

  1. @ElizeuAlmeida, vê se funciona esse: local config = { removeOnUse = "no", usableOnTarget = "yes", -- can be used on target? (fe. healing friend) splashable = "no", realAnimation = "no", -- make text effect visible only for players in range 1x1 healthMultiplier = 1.0, manaMultiplier = 1.0 } config.removeOnUse = getBooleanFromString(config.removeOnUse) config.usableOnTarget = getBooleanFromString(config.usableOnTarget) config.splashable = getBooleanFromString(config.splashable) config.realAnimation = getBooleanFromString(config.realAnimation) local POTIONS = { [8704] = {empty = 7636, splash = 2, health = {50, 100}}, -- small health potion [7618] = {empty = 7636, splash = 2, health = {100, 200}}, -- health potion [7588] = {empty = 7634, splash = 2, health = {200, 400}, level = 50, vocations = {3, 4, 7, 8}, vocStr = "knights and paladins"}, -- strong health potion [7591] = {empty = 7635, splash = 2, health = {500, 700}, level = 80, vocations = {4, 8}, vocStr = "knights"}, -- great health potion [8473] = {empty = 7635, splash = 2, health = {1450, 1500}, level = 130, vocations = {4, 8}, vocStr = "knights"}, -- ultimate health potion [7620] = {empty = 7636, splash = 7, mana = {100, 200}}, -- mana potion [7589] = {empty = 7634, splash = 7, mana = {110, 190}, level = 50, vocations = {1, 2, 3, 5, 6, 7}, vocStr = "sorcerers, druids and paladins"}, -- strong mana potion [7590] = {empty = 7635, splash = 7, mana = {1050, 1200}, level = 80, vocations = {1, 2, 5, 6}, vocStr = "sorcerers and druids"}, -- great mana potion [8472] = {empty = 7635, splash = 3, health = {1300, 1360}, mana = {230, 380}, level = 80, vocations = {3, 7}, vocStr = "paladins"} -- great spirit potion } local exhaust = createConditionObject(CONDITION_EXHAUST) setConditionParam(exhaust, CONDITION_PARAM_TICKS, (getConfigInfo('timeBetweenExActions') - 100)) function onUse(cid, item, fromPosition, itemEx, toPosition) local potion = POTIONS[item.itemid] if(not potion) then return false end if(not isPlayer(itemEx.uid) or (not config.usableOnTarget and cid ~= itemEx.uid)) then if(not config.splashable) then return false end if(toPosition.x == CONTAINER_POSITION) then toPosition = getThingPos(item.uid) end doDecayItem(doCreateItem(2016, potion.splash, toPosition)) doTransformItem(item.uid, potion.empty) return TRUE end if(hasCondition(cid, CONDITION_EXHAUST_HEAL)) then doPlayerSendDefaultCancel(cid, RETURNVALUE_YOUAREEXHAUSTED) return TRUE end if(((potion.level and getPlayerLevel(cid) < potion.level) or (potion.vocations and not isInArray(potion.vocations, getPlayerVocation(cid)))) and not getPlayerCustomFlagValue(cid, PLAYERCUSTOMFLAG_GAMEMASTERPRIVILEGES)) then doCreatureSay(itemEx.uid, "Only " .. potion.vocStr .. (potion.level and (" of level " .. potion.level) or "") .. " or above may drink this fluid.", TALKTYPE_ORANGE_1) return TRUE end local health = potion.health if(health and not doCreatureAddHealth(itemEx.uid, math.ceil(math.random(health[1], health[2]) * config.healthMultiplier))) then return false end local mana = potion.mana if(mana and not doPlayerAddMana(itemEx.uid, math.ceil(math.random(mana[1], mana[2]) * config.manaMultiplier))) then return false end doAddCondition(cid, exhaust) doSendMagicEffect(getThingPos(itemEx.uid), 30) doSendAnimatedText(fromPosition, "Aaaah...", 17) if(not potion.empty or config.removeOnUse) then doRemoveItem(item.uid, 1) return TRUE end doRemoveItem(item.uid, 0) doPlayerAddItem(cid, potion.empty, 0) doPlayerRemoveItem(cid, potion.empty, getPlayerItemCount(cid, potion.empty)) doPlayerAddItem(cid, potion.empty, getPlayerItemCount(cid, potion.empty)) return TRUE end
  2. Poderia me ajudar? estou precisando muito disso!
  3. Você deve ter algum script que não está permitindo o drop do loot, procure no seu creaturescripts/scripts, algum arquivo que tenha o nome deathbroadcast.lua, recompensa.lua ou algo do tipo e desative ele!
  4. data/creaturescripts/scripts/ cria um arquivo com o nome playerspeed.lua e adiciona isso dentro: local ps = { [10] = {speed = 238}, [50] = {speed = 318}, [100] = {speed = 418}, [200] = {speed = 618}, [300] = {speed = 818}, [400] = {speed = 1018}, [500] = {speed = 1218}, [600] = {speed = 1418} } function onAdvance(cid, skill, oldLevel, newLevel) local s, l = getCreatureSpeed(cid), ps[getPlayerLevel(cid)] if skill == SKILL__LEVEL and newLevel >= l then doChangeSpeed(cid, (s - s) + l.speed) end return true end Em data/creaturescripts/scripts/login.lua adiciona isso: registerCreatureEvent(cid, "PlayerSpeed") Em data/creaturescripts/creaturescripts.xml adiciona essa tag: <event type="advance" name="PlayerSpeed" event="script" value="playerspeed.lua"/> " [10] " é o level do player, você pode editar do seu gosto. " {speed = 238} " é a velocidade do player, que você pode estar editando também! @diarmaint
  5. @Vodkart, você poderia criar pra mim? se sim eu ficaria muito grato!!
  6. @Vodkart, não funcionou! Quando um player do mesmo ip mata não aparece a skull, mas quando ele desloga e loga a skull aparece. Não teria como você criar um creaturescripts que adiciona as skulls com uma storage no player? eu tentei usar esse script mas não funcionou: function onKill(cid, target, lastHit) if cid ~= target and isPlayer(target) then if getPlayerIp(cid) == getPlayerIp(target) then doCreatureAddHealth(cid, -200) doCreatureAddMana(cid, -200) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'You have been punished for killing a player of the same IP.') else doPlayerAddItem(cid, 2152, 1) setPlayerStorageValue(cid, 6776, getCreatureStorage(cid, 6776) + 1) end end if(getPlayerStorageValue(cid, 6776) == 5) and getCreatureStorage(cid, 6001) == -1 then setPlayerStorageValue(cid, 6001, 1) doCreatureSetSkullType(cid, 1) elseif(getPlayerStorageValue(cid, 6776) == 10) and getCreatureStorage(cid, 6002) == -1 then setPlayerStorageValue(cid, 6002, 1) doCreatureSetSkullType(cid, 2) elseif(getPlayerStorageValue(cid, 6776) == 25) and getCreatureStorage(cid, 6003) == -1 then setPlayerStorageValue(cid, 6003, 1) doCreatureSetSkullType(cid, 3) elseif(getPlayerStorageValue(cid, 6776) == 50) and getCreatureStorage(cid, 6004) == -1 then setPlayerStorageValue(cid, 6004, 1) doCreatureSetSkullType(cid, 4) elseif(getPlayerStorageValue(cid, 6776) == 100) and getCreatureStorage(cid, 6005) == -1 then setPlayerStorageValue(cid, 6005, 1) doCreatureSetSkullType(cid, 5) return true end end
  7. @Absolute
  8. @Vodkart, teria como colocar para quando um player do mesmo ip matar o outro não receber a skull?
  9. @Tulacala
  10. posta seu login.lua aí
  11. executa esse então: ALTER TABLE "players" ADD "cast" TINYINT( 4 ) NOT NULL DEFAULT '0';
  12. tenta executar essa SQL para ver se resolve: CREATE TABLE IF NOT EXISTS `player_inboxitems` ( `player_id` INTEGER NOT NULL, `sid` INTEGER NOT NULL, `pid` INTEGER NOT NULL DEFAULT 0, `itemtype` SMALLINT NOT NULL, `count` SMALLINT NOT NULL DEFAULT 0, `attributes` BLOB NOT NULL, UNIQUE (`player_id`,`sid`), PRIMARY KEY (`player_id`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE
  13. executa essa SQL: CREATE TABLE IF NOT EXISTS `player_inboxitems` ( `player_id` INTEGER NOT NULL, `sid` INTEGER NOT NULL, `pid` INTEGER NOT NULL DEFAULT 0, `itemtype` SMALLINT NOT NULL, `count` SMALLINT NOT NULL DEFAULT 0, `attributes` BLOB NOT NULL, UNIQUE (`player_id`,`sid`), PRIMARY KEY (`player_id`), FOREIGN KEY (`player_id`) REFERENCES `players`(`id`) ON DELETE CASCADE );
  14. <vocation id="4" name="Knight" description="a knight" needpremium="0" gaincap="25" gainhp="15" gainmana="5" gainhpticks="6" gainhpamount="1" gainmanaticks="6" gainmanaamount="2" manamultiplier="3.0" attackspeed="2000" soulmax="100" gainsoulticks="120" fromvoc="4"> <formula meleeDamage="1.0" distDamage="1.0" wandDamage="1.0" magDamage="1.0" magHealingDamage="1.0" defense="1.0" magDefense="1.0" armor="1.0"/> <skill fist="1.1" club="1.1" sword="1.1" axe="1.1" distance="1.4" shielding="1.1" fishing="1.1" experience="1.0"/> <absorb percentEnergy="12"/> <absorb percentFire="14"/> <absorb percentPoison="10"/> <absorb percentice="8"/> <absorb percentHoly="-7"/> <absorb percentPhysical="-7"/> <absorb percentDeath="5"/> <absorb percentLifeDrain="0"/> <absorb percentManaDrain="15"/> <absorb percentDrown="0"/> </vocation>
  15. Aqui deu certo, mas só com o player que digitou "/cast on" ocorre o exhaust. Eu não expliquei muito bem, mas eu queria que o espectador levasse o exhaust, e, quando levar o exhuast apareceria uma mensagem no default "You are exhausted.", igual a da foto.
  16. Quero pedir duas coisas! 1º Colocar exhausted quando algum player falar no cast channel. 2º Quando o player digitar /cast on abrir o chat junto! Eu utilizo source otx 0.3.7 8.60
  17. Biinhow postou uma resposta no tópico em Suporte Tibia OTServer
    exausted pra falar! Se for possível também, quando o player digitar /cast on o chat abrir junto só se for possível mesmo!
  18. Biinhow postou uma resposta no tópico em Suporte Tibia OTServer
    @Absolute poderia ajudar a colocar exhausted no cast channel? minha source é otx!
  19. Já aconteceu isso comigo, e só consegui vender o item com o sistema de alavanca, mas eu não utilizo tfs 1.x.
  20. Eu aconselho você utilizar um sistema de alavanca para vender o item editado, pois acho que não tem como vende-lo pelo npc.

Informação Importante

Confirmação de Termo