Conectarse
Buscar
Mejores posteadores
XxStroksxX (463) | ||||
~*~[:Đαяќ:]~[:тιβια:]~*~ (366) | ||||
spoor (83) | ||||
Dj Pacos (73) | ||||
God Skit (68) | ||||
GoD MexicanSoul (40) | ||||
fuzzy (35) | ||||
Eddie (31) | ||||
GOD Chimito (30) | ||||
conalep1996 (23) |
Últimos temas
Temas más activos
Miembros que empiezan más temas
XxStroksxX | ||||
~*~[:Đαяќ:]~[:тιβια:]~*~ | ||||
God Skit | ||||
spoor | ||||
GoD MexicanSoul | ||||
fuzzy | ||||
Eddie | ||||
conalep1996 | ||||
God Rakzzo | ||||
Cletus |
[Varios] El mejor sistema vip Modificado por mi
4 participantes
Página 1 de 1.
[Varios] El mejor sistema vip Modificado por mi
AKI PARA LOS K USAN ""PHPMYADMIN""
AKI LES DEJO EL MEJOR SISTEMA VIP...LO ENKONTRE VAGANDO POR LA INTERNET PERO TODOS LOS K ME DAVAN ESE
SISTEMA ESTAVAN MAL HECHOS ASI K ME PASE 1 DIA ENTERO ENCONTRANDO KADA DETALLE DE LOS ERRORES HASTA K PORFIN LO LOGRE ACOMODAR ..AKI LES DEJO :
uso:
Bien, les explicare el sistema.. La mayoria de los sistemas vip usan un globalevent
para remover 1 dia vip cada 2 horas, pero, que pasa si el servidor
lleva abierto 23 horas y se cae? El dia no seria removido, tendrias que
esperar otras 24 hroas para que pueda ser removido, en este sistema vip
ese error esta arreglado.. ahora el dia vip sera removido a una hora del
dia especifica, si lo pones a las 2pm, entonces a esa hora sera
removido el dia vip, asi si el servidor se cae por 3 minutos, no tendras
que esperar otras 24horas, igual se seguira removiendo el dia vip a las
2pm.
""EL MEJOR SISTEMA VIP"" [SUPER DETALLADO] (creo k me llevare 1 hora haciendo este post) jeje ::
empezemos:
Ve a tu phpmyadmin abre tu base de datos en la parte que diga account y ejecuta y la pestaña SQL:
te aparecera un recuadro donde aparecera esto SELECT * FROM `accounts` WHERE 1 borralo y deveras pegar lo siguiente::
les quedara algo asi:
si siguieron bien los pasos abran la lista de las account deve de kedarle algo asi::
ahora van a data/lib/function.lua
y escriben esto arriva de todo::
Una vez hecho, agrega esta linea en data/creaturescript/login.lua ojo. pegalo hasta el final antes de donde diga return true::
data/creaturescript/creaturescript.xml pega esto ::
Ahora, ve a data/globalevents/scripts/, crea un nuevo archivo y llamalo daysremover.lua y le pegas esto dentro:
data/globalevents/globanevents.xml ::
Puedes cambiar la hora en la que el dia vip sera removido donde dice: (time="00:01").
Si tienes 1 o mas dias vip, cuando conectes te saldra el siguiente mensaje:
---PISO VIP---
data/movements/scripts/viptile.lua <-----CREA UN ARCHIVO LLAMADO ASI: pegale dentro lo sig.:
data/movements/movements.xml agrega esto:
En tu map editor, ponle actionid 11223 al piso que quieres que sea solo para vips.
MEDALLA VIP
data/actions/scripts/vipmedal.lua <--NO SE LES OLVIDE LLAMARLO ASI ..dentro le pegan esto
ahora en action.xml agrega esto.::
COMANDO PARA AGREGAR Y REMOVER LOS DIAS VIP
data/talkactions/scripts/adddays.lua <--LO LLAMAS ASI..LE PEGAS LO SIGUIENTE ADENTRO::
en DATA/TALKACTION/SCRIPTS/removedays <--lo llamas asi y le pegas esto dentro::
EN TALKACTION.XML agrega esto:: ojo : agregalo en los talkactions del GOD::
PUERTA VIP
en data/actions/scripts creas un archivo llamado vipdoor.lua
le pegas esto dentro_::
en action.xml agregas esto::
REKUERDA K EN TU MAP EDITOR DEVES AGREGAR TODAS LAS ACCIONES !!
EL EFECTO VIP NO SE LO PUSE A MI SERVER POR K ME PARECIO ALGO K ESTA DE MAS ..SIMPLE..NO ME AGRADO::POR ESO NO SE SI ESTE BIEN O MAL PERO AUN ASI SE LOS POSTEO SI TIENE ALGUN ERROR FAVOR DE DECIRME:::
EFFECTO VIP
globalevents/scripts/vipEffect.lua <--ASI LO LLAMAN AL ARCHIVO Y LE PEGAN ESTO::
y en globalevent.xml agregan lo siguiente::
Y LISTO!!! YA TIENEN EL MEJOR SISTEMA VIP xD
ACCIONES::
/adddays(espacio)(numerodedias k le agregaran)(,coma)(espacio)(namedelchar) -> /adddays 30, ckripz
/removedays(espacio)(numerodedias k le removeran)(,coma)(espacio)(namedelchar) -> /removedays 10, ckripz
PARA MI UN GRAN ESFUERZO PODER HACER ESTE TUTORIAL ESPERO Y AGRADESCAN MI ESFUERZO
-----ES HASTA AHORA EL MEJOR SISTEMA VIP--- Y SE LOS DEJO A USTEDES CON EL FIN DE K ESTE TUTO SEA BIEN PUBLIKADO
Y NO COPIADO POR OTRAS PERSONAS SOLO ES PARA ESTE FORO ---PARA K SEA MAS MEJOR DE LO K ES---
GRACIAS--
REP SI LES SIRVIO
creditos:: KEKO´X
Y MODIFICADO POR MI
AKI LES DEJO EL MEJOR SISTEMA VIP...LO ENKONTRE VAGANDO POR LA INTERNET PERO TODOS LOS K ME DAVAN ESE
SISTEMA ESTAVAN MAL HECHOS ASI K ME PASE 1 DIA ENTERO ENCONTRANDO KADA DETALLE DE LOS ERRORES HASTA K PORFIN LO LOGRE ACOMODAR ..AKI LES DEJO :
uso:
Bien, les explicare el sistema.. La mayoria de los sistemas vip usan un globalevent
para remover 1 dia vip cada 2 horas, pero, que pasa si el servidor
lleva abierto 23 horas y se cae? El dia no seria removido, tendrias que
esperar otras 24 hroas para que pueda ser removido, en este sistema vip
ese error esta arreglado.. ahora el dia vip sera removido a una hora del
dia especifica, si lo pones a las 2pm, entonces a esa hora sera
removido el dia vip, asi si el servidor se cae por 3 minutos, no tendras
que esperar otras 24horas, igual se seguira removiendo el dia vip a las
2pm.
- Funciones LUA
- Removedor automatico de dias vip.
- Piso vip.
- onLogin script para ver si el player es vip.
- Medalla vip.
- Comando para remover dias vip.
- Comando para agregar dias vip.
""EL MEJOR SISTEMA VIP"" [SUPER DETALLADO] (creo k me llevare 1 hora haciendo este post) jeje ::
empezemos:
Ve a tu phpmyadmin abre tu base de datos en la parte que diga account y ejecuta y la pestaña SQL:
te aparecera un recuadro donde aparecera esto SELECT * FROM `accounts` WHERE 1 borralo y deveras pegar lo siguiente::
- Código:
[color=#993333][b]ALTER[/b][/color] [color=#993333][b]TABLE[/b][/color] [color=#ff0000]`accounts`[/color] [color=#993333][b]ADD[/b][/color]
[color=#ff0000]`vipdays`[/color] int[color=#66cc66]([/color][color=#cc66cc]11[/color][color=#66cc66])[/color] [color=#993333][b]NOT[/b][/color] [color=#993333][b]NULL[/b][/color] [color=#993333][b]DEFAULT[/b][/color] [color=#cc66cc]0[/color];
les quedara algo asi:
si siguieron bien los pasos abran la lista de las account deve de kedarle algo asi::
ahora van a data/lib/function.lua
y escriben esto arriva de todo::
- Código:
function getPlayerVipDays(cid)
local Info = db.getResult("SELECT `vipdays` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. " LIMIT 1")
if Info:getID() ~= LUA_ERROR then
local days= Info:getDataInt("vipdays")
Info:free()
return days
end
return LUA_ERROR
end
function doAddVipDays(cid, days)
db.executeQuery("UPDATE `accounts` SET `vipdays` = `vipdays` " .. days .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
end
function doRemoveVipDays(cid, days)
db.executeQuery("UPDATE `accounts` SET `vipdays` = `vipdays` - " .. days .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
end
Una vez hecho, agrega esta linea en data/creaturescript/login.lua ojo. pegalo hasta el final antes de donde diga return true::
- Código:
registerCreatureEvent(cid, "VipCheck")
- Código:
function onLogin(cid)
if getPlayerVipDays(cid) >= 1 then
doPlayerSendTextMessage(cid, 19, "You have ".. getPlayerVipDays(cid) .." vip days left.")
end
return true
end
data/creaturescript/creaturescript.xml pega esto ::
- Código:
<event type="login" name="VipCheck" event="script" value="vipcheck.lua"/>
Ahora, ve a data/globalevents/scripts/, crea un nuevo archivo y llamalo daysremover.lua y le pegas esto dentro:
- Código:
function onTimer()
db.executeQuery("UPDATE accounts SET vipdays = vipdays - 1 WHERE vipdays > 0;")
return true
end
data/globalevents/globanevents.xml ::
- Código:
<globalevent name="VipDaysRemover" time="00:01" event="script" value="daysremover.lua"/>
Puedes cambiar la hora en la que el dia vip sera removido donde dice: (time="00:01").
Si tienes 1 o mas dias vip, cuando conectes te saldra el siguiente mensaje:
---PISO VIP---
data/movements/scripts/viptile.lua <-----CREA UN ARCHIVO LLAMADO ASI: pegale dentro lo sig.:
- Código:
function onStepIn(cid, item, position, fromPosition)
if getPlayerVipDays(cid) == 0 then
doTeleportThing(cid, fromPosition, FALSE)
end
return true
end
data/movements/movements.xml agrega esto:
- Código:
<movevent type="StepIn" actionid="3168" event="script" value="viptile.lua"/>
En tu map editor, ponle actionid 11223 al piso que quieres que sea solo para vips.
MEDALLA VIP
data/actions/scripts/vipmedal.lua <--NO SE LES OLVIDE LLAMARLO ASI ..dentro le pegan esto
- Código:
function onUse(cid, item, fromPosition, itemEx, toPosition)
if getPlayerVipDays(cid) > 365 then
doPlayerSendCancel(cid, "You can only have 1 year of vip account or less.")
else
doAddVipDays(cid, 30)
doCreatureSay(cid, "VIP")
doPlayerPopupFYI(cid, "We have added 30 vip days to your account!\nEnjoy it!.")
doRemoveItem(item.uid)
end
return true
end
ahora en action.xml agrega esto.::
- Código:
<action itemid="10140" event="script" value="vipmedal.lua"/>
COMANDO PARA AGREGAR Y REMOVER LOS DIAS VIP
data/talkactions/scripts/adddays.lua <--LO LLAMAS ASI..LE PEGAS LO SIGUIENTE ADENTRO::
- Código:
function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")
return true
end
local t = string.explode(param, ",")
t[1] = tonumber(t[1])
if(not t[1]) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires numeric param.")
return true
end
local pid = cid
if(t[2]) then
pid = getPlayerByNameWildcard(t[2])
if(not pid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[2] .. " not found.")
return true
end
end
if(t[1] > 365) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You can only add max 365 vip days.")
return true
end
sender = getPlayerByNameWildcard(cid)
doAddVipDays(pid, t[1])
doPlayerSendTextMessage(cid, "You have added ".. t[1] .." vip days to ".. t[2])
doPlayerSendTextMessage(pid, sender .." just added you ".. t[1] .." vip days.")
return true
end
en DATA/TALKACTION/SCRIPTS/removedays <--lo llamas asi y le pegas esto dentro::
- Código:
function onSay(cid, words, param, channel)
if(param == '') then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")
return true
end
local t = string.explode(param, ",")
t[1] = tonumber(t[1])
if(not t[1]) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires numeric param.")
return true
end
local pid = cid
if(t[2]) then
pid = getPlayerByNameWildcard(t[2])
if(not pid) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[2] .. " not found.")
return true
end
end
if(t[1] > 365) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You can only add max 365 vip days.")
return true
end
sender = getPlayerByNameWildcard(cid)
doRemoveVipDays(pid, t[1])
doPlayerSendTextMessage(cid, "You have removed ".. t[1] .." vip days to ".. t[2])
doPlayerSendTextMessage(pid, sender .." just removed you ".. t[1] .." vip days.")
return true
end
EN TALKACTION.XML agrega esto:: ojo : agregalo en los talkactions del GOD::
- Código:
<talkaction log="yes" words="/removedays" access="5" event="script" value="removedays.lua"/>
<talkaction log="yes" words="/adddays" access="5" event="script" value="adddays.lua"/>
PUERTA VIP
en data/actions/scripts creas un archivo llamado vipdoor.lua
le pegas esto dentro_::
- Código:
function onUse(cid, item, frompos, item2, topos)
if getPlayerVipDays(cid) >= 1 then
pos = getPlayerPosition(cid)
if pos.x == topos.x then
if pos.y < topos.y then
pos.y = topos.y 1
else
pos.y = topos.y - 1
end
elseif pos.y == topos.y then
if pos.x < topos.x then
pos.x = topos.x 1
else
pos.x = topos.x - 1
end
else
doPlayerSendTextMessage(cid,22,"Stand in front of the door.")
return true
end
doTeleportThing(cid,pos)
doSendMagicEffect(topos,12)
else
doPlayerSendTextMessage(cid,22,'Only VIP Account can go there.')
end
return true
end
en action.xml agregas esto::
- Código:
<action actionid="1920" event="script" value="vipdoor.lua"/>
REKUERDA K EN TU MAP EDITOR DEVES AGREGAR TODAS LAS ACCIONES !!
EL EFECTO VIP NO SE LO PUSE A MI SERVER POR K ME PARECIO ALGO K ESTA DE MAS ..SIMPLE..NO ME AGRADO::POR ESO NO SE SI ESTE BIEN O MAL PERO AUN ASI SE LOS POSTEO SI TIENE ALGUN ERROR FAVOR DE DECIRME:::
EFFECTO VIP
globalevents/scripts/vipEffect.lua <--ASI LO LLAMAN AL ARCHIVO Y LE PEGAN ESTO::
- Código:
function onThink(interval, lastExecution)
for _, name in ipairs(getOnlinePlayers()) do
local cid = getPlayerByName(name)
if getPlayerVipDays(cid) >= 1 then
doSendMagicEffect(getPlayerPosition(cid), 27)
end
end
return true
end
y en globalevent.xml agregan lo siguiente::
- Código:
<globalevent name="vipEffect" interval="2" script="vipEffect.lua"/>
Y LISTO!!! YA TIENEN EL MEJOR SISTEMA VIP xD
ACCIONES::
/adddays(espacio)(numerodedias k le agregaran)(,coma)(espacio)(namedelchar) -> /adddays 30, ckripz
/removedays(espacio)(numerodedias k le removeran)(,coma)(espacio)(namedelchar) -> /removedays 10, ckripz
PARA MI UN GRAN ESFUERZO PODER HACER ESTE TUTORIAL ESPERO Y AGRADESCAN MI ESFUERZO
-----ES HASTA AHORA EL MEJOR SISTEMA VIP--- Y SE LOS DEJO A USTEDES CON EL FIN DE K ESTE TUTO SEA BIEN PUBLIKADO
Y NO COPIADO POR OTRAS PERSONAS SOLO ES PARA ESTE FORO ---PARA K SEA MAS MEJOR DE LO K ES---
GRACIAS--
REP SI LES SIRVIO
creditos:: KEKO´X
Y MODIFICADO POR MI
God Rakzzo
Fisgón- + New User +
Edad : 32
Mensajes : 12
Localización : Me kieres secuestrar??
Fecha de inscripción : 29/01/2011
Re: [Varios] El mejor sistema vip Modificado por mi
si men de dias
God Rakzzo
Fisgón- + New User +
Edad : 32
Mensajes : 12
Localización : Me kieres secuestrar??
Fecha de inscripción : 29/01/2011
Re: [Varios] El mejor sistema vip Modificado por mi
Para a todo aquel que no le este funcionando este sistema,a God Rakzzo se le fue un minimo detalle en la programacion.
le falta el signo de + despues de `vip_time`
Gracias
- Código:
[b]function getPlayerVipDays(cid)
local Info = db.getResult("SELECT `vip_time` FROM `accounts` WHERE `id` = " .. getPlayerAccountId(cid) .. " LIMIT 1")
if Info:getID() ~= LUA_ERROR then
local days= Info:getDataInt("vip_time")
Info:free()
return days
end
return LUA_ERROR
end
function doAddVipDays(cid, days)
db.executeQuery("UPDATE `accounts` SET `vip_time` =`vip_time` + " .. days .. " WHERE `id` = " ..getPlayerAccountId(cid) .. ";")
end
function doRemoveVipDays(cid, days)
db.executeQuery("UPDATE `accounts` SET `vip_time` =`vip_time` - " .. days .. " WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
end[/b]
le falta el signo de + despues de `vip_time`
Gracias
ArkothFEAR
Infiltrado- + New User +
Edad : 32
Mensajes : 2
Localización : Reynosa
Fecha de inscripción : 22/12/2011
Re: [Varios] El mejor sistema vip Modificado por mi
aaaaa se me olvido! Muchas gracias carnal! EXCELENTE APORTACION
ArkothFEAR
Infiltrado- + New User +
Edad : 32
Mensajes : 2
Localización : Reynosa
Fecha de inscripción : 22/12/2011
Temas similares
» [Varios] System Fly modificado y arreglado por mi
» [Action] SISTEMA DE ADDON POR QUEST
» [Spells] Sistema de montura (mount)
» [SISTEMA]Anti bot
» [SIstema]Loteria
» [Action] SISTEMA DE ADDON POR QUEST
» [Spells] Sistema de montura (mount)
» [SISTEMA]Anti bot
» [SIstema]Loteria
Página 1 de 1.
Permisos de este foro:
No puedes responder a temas en este foro.
|
|
Lun Jun 08, 2015 12:08 pm por keishmer91
» [ACTION] God/GM da item a un player
Mar Dic 02, 2014 12:53 pm por hecmanos
» [8.60] Nuevo War Thais By TheRobertxon
Vie Jun 20, 2014 10:56 am por luismc
» [7.92]Naruto Final Story!
Dom Mayo 26, 2013 2:40 am por ricardotuck
» [9.1] Fun Server
Mar Mayo 14, 2013 5:32 pm por skifer
» [9.1] The Forgotten Server v0.2.11pl2 (Mystic Spirit)
Mar Mayo 14, 2013 5:29 pm por skifer
» New Map 8.60 (Darksystem) By: Turock & Gilio LIsto Arreglado El
Mar Mayo 07, 2013 5:27 pm por tonyso
» Ocean Clasic Global Map 8.6
Miér Mayo 01, 2013 11:19 pm por maganiua
» ayuda a abrir puertos
Lun Abr 29, 2013 5:58 pm por XxStroksxX
» [8.60] Speedy War
Dom Abr 28, 2013 5:51 pm por Sunnade'Audio