Comparte
Ver el tema anteriorIr abajoVer el tema siguiente
avatar
Moderador
Mensajes Mensajes : 27
Ver perfil de usuario

[Talkactions] Castigar al jugador sin moverse ni hablar.

el Vie Jul 27, 2012 7:10 pm
Reputación del mensaje :50% (2 votos)
Hola, encontré un script que tenía en mi PC, no es mío, estaba en un server y en ese server me acordé que mucha gente insultaba a los gods, y gracias a esta action, los castigaba sin dejar que se muevan, ni que hablen y que hagan magia hasta que yo quiera, lo edité un poco pero aquí va el script, pero para hacerlo tienes que ir a tuot/data/talkations y copiarlo con el nombre de "castigo".

Código:
--Editado por Syko --
  local condition1 = createConditionObject(CONDITION_INFIGHT)
  local condition2 = createConditionObject(CONDITION_EXHAUST)
  local condition3 = createConditionObject(CONDITION_MUTED)
  setConditionParam(condition1, CONDITION_PARAM_TICKS, -1)
  setConditionParam(condition2, CONDITION_PARAM_TICKS, -1)
  setConditionParam(condition3, CONDITION_PARAM_TICKS, -1)
 
function onSay(cid, words, param)
  if(param == "") then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Name required.")
      return TRUE
  end
 
  local player = getPlayerByNameWildcard(param)
      local pos = getCreaturePosition(player)
 
      local nha = {x = pos.x, y = pos.y - 3, z = pos.z, stackpos = 255}
      local sha = {x = pos.x, y = pos.y + 3, z = pos.z, stackpos = 255}
      local wha = {x = pos.x - 3, y = pos.y, z = pos.z, stackpos = 255}
      local eha = {x = pos.x + 3, y = pos.y, z = pos.z, stackpos = 255}
      local nwa = {x = pos.x - 2, y = pos.y - 2, z = pos.z, stackpos = 255}
      local nea = {x = pos.x + 2, y = pos.y - 2, z = pos.z, stackpos = 255}
      local sea = {x = pos.x + 2, y = pos.y + 2, z = pos.z, stackpos = 255}
      local swa = {x = pos.x - 2, y = pos.y + 2, z = pos.z, stackpos = 255}
if getPlayerGroupId(cid) >= getPlayerGroupId(player) then
if getPlayerStorageValue(player, 12346) < 0 then
  if((doCreatureSetNoMove(player, 1))== LUA_ERROR) then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Error.")
  end
      setPlayerStorageValue(player, 12346, 1)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "El jugador ya no se puede mover.")
      doSendAnimatedText(getCreaturePosition(player), "Castigado!", 64)
        doSendDistanceShoot(nha, pos, 28)
        doSendDistanceShoot(sha, pos, 28)
        doSendDistanceShoot(wha, pos, 28)
        doSendDistanceShoot(eha, pos, 28)
        doSendDistanceShoot(nwa, pos, 28)
        doSendDistanceShoot(nea, pos, 28)
        doSendDistanceShoot(sea, pos, 28)
        doSendDistanceShoot(swa, pos, 28)
            doSendMagicEffect(pos, 52)
        doAddCondition(player, condition1)
        doAddCondition(player, condition2)
        doAddCondition(player, condition3)
elseif getPlayerStorageValue(player, 12346) >= 0 then
  if((doCreatureSetNoMove(player, 0))== LUA_ERROR) then
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Error.")
  end
      setPlayerStorageValue(player, 12346, -1)
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "El jugador puede volver a moverse denuevo..")
      doSendAnimatedText(getCreaturePosition(player), "Descastigado!", 168)
        doSendDistanceShoot(pos, nha, 37)
        doSendDistanceShoot(pos, sha, 37)
        doSendDistanceShoot(pos, wha, 37)
        doSendDistanceShoot(pos, eha, 37)
        doSendDistanceShoot(pos, nwa, 37)
        doSendDistanceShoot(pos, nea, 37)
        doSendDistanceShoot(pos, sea, 37)
        doSendDistanceShoot(pos, swa, 37)
            doSendMagicEffect(pos, 49)
        doRemoveCondition(cid, CONDITION_INFIGHT)
        doRemoveCondition(cid, CONDITION_EXHAUST)
        doRemoveCondition(cid, CONDITION_MUTED)
end
end
  return TRUE
end

Después vamos a tuot/data/talkations y abrimos el .LUA que aparece y colocamos esto:


Código:
<talkaction log="yes" access="3" words="/castigar" event="script" value="other/castigo.lua"/>

Para utilizar este comando debes de decir:

- /castigar PLAYER NAME (Castiga al jugador)
- /castigar PLAYER NAME (Descastiga al jugador)
Ver el tema anteriorVolver arribaVer el tema siguiente
Permisos de este foro:
No puedes responder a temas en este foro.