OTHispano
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.

Ir abajo
Obsdark
Obsdark
Miembro
Mensajes Mensajes : 13

Peaje c/n pago e Impuestos Empty Peaje c/n pago e Impuestos

Dom Mayo 20, 2012 9:58 pm
¡Buenas!

intente hacer/conseguirme un sistema de peaje que cuando tiras una palanca, te cobre una determinada cantidad de oro, te teletransporte al otro lado (de un puente, por ejemplo) y genere otras cantidades de oro en otras coordenadas, y obtuve finalmente esto:

Código:

local t = {
   [1001] = {
      cost = 50,
      pos = {
         {x = 100, y = 100, z = 7}, -- where the player goes.
         {x = 100, y = 100, z = 7}, -- where the gold is created (spot 1).
         {x = 100, y = 100, z = 7} -- where the gold is created (spot 2).
      }
   }
}
 
function onUse(cid, item, fromPosition, itemEx, toPosition)
   local v, k = t[item.actionid], item.itemid == 1945
   if(v and k) then
      if(not doPlayerRemoveMoney(cid, v.cost)) then
         return doPlayerSendCancel(cid, "You do not have enough money."), doSendMagicEffect(getThingPosition(cid, CONST_ME_POFF)
      else
         local b, c = getTileItemById(v.pos[2], 2148), getTileItemById(v.pos[3], 2148)
         if(b.type > 0 or c.type > 0) then
            doRemoveItem(b.uid)
            doRemoveItem(c.uid)
         end
 
         doTeleportThing(cid, v.pos[1], false)
         doCreateItem(2148, math.random(10, v.cost), v.pos[2])
         doCreateItem(2148, math.random(10, v.cost), v.pos[3])
         doSendMagicEffect(v.pos[1], CONST_ME_TELEPORT)
         doSendMagicEffect(v.pos[2], CONST_ME_ENERGYAREA)
         doSendMagicEffect(v.pos[3], CONST_ME_ENERGYAREA)
              end
         end
   return doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)
      end
end

El asunto es que intenté hacerlo, pero no funciono por lo cual me consegui uno por allí que está hecho a pedido, pero el problema es que esta malo, le faltaba un "end" y no funcionaba, así que se lo agrege, y ¿que creen?, pués sigue sin funcionar. xD

¿Creen que podrían revisarlo y ver si pueden arreglarlo/crearlo y dejarlo funcionando?

trate de agregar dicho "end" al final del script para arreglarlo, pero incluso después de ponerlo el script no se arreglo, el problema especifico del script es (Según la consola) las lineas 15 y 16:

y no se como arreglarlo pues no sé como cerrar o terminar un return :S

Código:

(...)
if(not doPlayerRemoveMoney(cid, v.cost)) then -- line 15
         return doPlayerSendCancel(cid, "You do not have enough money."), doSendMagicEffect(getThingPosition(cid, CONST_ME_POFF) -- line 16
      else
         local b, c = getTileItemById(v.pos[2], 2148), getTileItemById(v.pos[3], 2148)
         if(b.type > 0 or c.type > 0) then
            doRemoveItem(b.uid)
            doRemoveItem(c.uid)
         end
 
         doTeleportThing(cid, v.pos[1], false)
         doCreateItem(2148, math.random(1, v.cost), v.pos[2])
         doCreateItem(2148, math.random(1, v.cost), v.pos[3])
         doSendMagicEffect(v.pos[1], CONST_ME_TELEPORT)
         doSendMagicEffect(v.pos[2], CONST_ME_ENERGYAREA)
         doSendMagicEffect(v.pos[3], CONST_ME_ENERGYAREA)
      end
   end -- end line 15
(...)

Este es el error como se ve en la consola.

Peaje c/n pago e Impuestos Problemwiththetoll

¿Crees que puedas ayudarme con esto?

Voy a postearlo también en otra sección, pues no se muy bien donde va.

¡Bendiciones, Alegrías y Gracias de antemano!
(Y)(Y)


-Obsdark-
Falcon
Falcon
Administrador
Mensajes Mensajes : 350
http://www.othispano.net

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Dom Mayo 20, 2012 10:08 pm
Código:
local t = {
  [1001] = {
      cost = 50,
      pos = {
        {x = 100, y = 100, z = 7}, -- where the player goes.
        {x = 100, y = 100, z = 7}, -- where the gold is created (spot 1).
        {x = 100, y = 100, z = 7} -- where the gold is created (spot 2).
      }
  }
}
 
function onUse(cid, item, fromPosition, itemEx, toPosition)
  local v, k = t[item.actionid], item.itemid == 1945
  if(v and k) then
      if(not doPlayerRemoveMoney(cid, v.cost)) then
        return doPlayerSendCancel(cid, "You do not have enough money."), doSendMagicEffect(getThingPosition(cid, CONST_ME_POFF))
      else
        local b, c = getTileItemById(v.pos[2], 2148), getTileItemById(v.pos[3], 2148)
        if(b.type > 0 or c.type > 0) then
            doRemoveItem(b.uid)
            doRemoveItem(c.uid)
        end
 
        doTeleportThing(cid, v.pos[1], false)
        doCreateItem(2148, math.random(10, v.cost), v.pos[2])
        doCreateItem(2148, math.random(10, v.cost), v.pos[3])
        doSendMagicEffect(v.pos[1], CONST_ME_TELEPORT)
        doSendMagicEffect(v.pos[2], CONST_ME_ENERGYAREA)
        doSendMagicEffect(v.pos[3], CONST_ME_ENERGYAREA)
              end
        end
  return doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)
end

Pruebalo así Smile, y dime que tal.
Obsdark
Obsdark
Miembro
Mensajes Mensajes : 13

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Jue Mayo 31, 2012 8:12 am
Buenos Días

Muchas Gracias antes que nada Falcón por tu ayuda y disposición, debo decir que prove el script que me has mandado pero este no ha producido su efecto, no ha ni teletransportado ni cobrado el dinero del player.

De hecho tampoco ha mandado ningún efecto o error en la consola, por lo que te pido (si es que fuera posible) que revisaras que puede ser aquello que hace que no trabaje adecuadamente.

Muy Agradecido

Atte

-Obsdark-
Obsdark
Obsdark
Miembro
Mensajes Mensajes : 13

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Vie Jul 20, 2012 2:33 pm
Me han dado una solución, de todas formas

¡Muchas Gracias!
(Y)(Y)

Procedí a dejar los rep+ pertinentes por el caso Wink
avatar
Masakre
Miembro
Mensajes Mensajes : 36

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Vie Jul 20, 2012 11:27 pm
Obsdark, ¿podrías decirme dónde puedo aprender algo de Lua?
Una vez (hace 1 año aproximadamente) había pedido a un usuario experto en LUA (digo experto porque por lo visto siempre ayudaba a solucionar los scripts más dificultosos en muchos foros) algunas guías, y sólo me mandó una página en inglés acerca de LUA. De la que verdaderamente, no entendí nada Smile
Y eso es porque está en inglés. Por lo menos me gustaría intentarlo con alguna guía en español.
Gracias de antemano.
Obsdark
Obsdark
Miembro
Mensajes Mensajes : 13

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Sáb Jul 21, 2012 1:35 pm
Hay muchas guías en internet, por Guía Lua OpenTibia en google y deberían saltarte algunos Wink


¡Bendiciones!
(Y)(Y)

PD: Espero que te sirva de algo Wink

PD2: ¡¡¡¡Thread Close!!!! ¡¡¡¡CIERREN EL POST!!!!
Falcon
Falcon
Administrador
Mensajes Mensajes : 350
http://www.othispano.net

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Sáb Jul 21, 2012 6:12 pm
Cerrado.
Contenido patrocinado

Peaje c/n pago e Impuestos Empty Re: Peaje c/n pago e Impuestos

Volver arriba
Permisos de este foro:
No puedes responder a temas en este foro.