[Ajuda] Sistema

NdboHakai

EngSzMi
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/01/19Posts: 37Gênero: Masculino

Fala galera do Xtibia

Eu tenho um sistema que eu pedi aqui no forum e o  @Yan Liima

Fez e etc.. , mas só que tem um problema [+/-]

O Sistema envia o jogador para um Hospital, mas se eu usar + de 1 cidade para os jogadores criar vai dar conflito

Oque eu gostaria era de uma ajuda para por pro sistema funcionar em outras posições se caso o jogador tiver em outra cidade

no site vai ter 2 ou mais cidades para o jogador escolher na hora de criar o character, e eu queria que nas outras cidades tivessem hospitais também.

 

Resumo : O sistema atual funciona pra tudo e todas, Oque eu quero é que tenha uma forma de verificar qual cidade o character foi criado e puxar ele para a position da cidade dele caso morra.

 

Spoiler

local hospitalpos = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1026, y = 981, z = 7},
[3] = {x = 1030, y = 981, z = 7},
}

local str = 66666

function onDeath(cid, position)
registerCreatureEvent(cid, "DeathPlayerHospital_L")
if isPlayer(cid) then
setPlayerStorageValue(cid, str, 1)
end
return true
end

function onLogin(cid)
registerCreatureEvent(cid, "DeathPlayerHospital")
if isPlayer(cid) then
    if getPlayerStorageValue(cid, str) == 1 then
    setPlayerStorageValue(cid, str, -1)
    doTeleportThing(cid, hospitalpos[math.random(#hospitalpos)], true)
    end
end
return true
end

 

Yan Liima

Scripter,Programador,WebMaster.
avatar
Diretor
Diretor

INFOS

Grupo: DiretorRegistrado: 12/05/12Posts: 818Gênero: MasculinoChar no Tibia: [ADM] Night

To meio ocupado aqui, dá pra fazer isso de várias forma. O ideal seria por um [TownID] antes das numeração das pos, ia ficar bem organizado. Mas fiz uma mini gambiarra aqui, vê se funciona:

local hospitalpos = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1026, y = 981, z = 7},
[3] = {x = 1030, y = 981, z = 7},
}
local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
}
local str = 66666

function onDeath(cid, position)
if isPlayer(cid) then
setPlayerStorageValue(cid, str, 1)
end
return true
end

function onLogin(cid)
if isPlayer(cid) and getPlayerTown(cid) == 0 then --ID da City(TownID)
    if getPlayerStorageValue(cid, str) == 1 then
    setPlayerStorageValue(cid, str, -1)
    doTeleportThing(cid, hospitalpos[math.random(#hospitalpos)], true)
    end
end
if isPlayer(cid) and getPlayerTown(cid) == 1 then --ID da City(TownID)
    if getPlayerStorageValue(cid, str) == 1 then
    setPlayerStorageValue(cid, str, -1)
    doTeleportThing(cid, hospitalpos2[math.random(#hospitalpos2)], true)
    end
end

return true
end

 

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

ALGUNS DOS MEUS TRABALHOS:

Spoiler

WODBOHS[DOWNLOAD]

Newstory dbo+nto+bleach[DOWNLOAD]

 

>> Mais infos <<

- Projetos lançados também feitos por mim {

DBO SKY

POKE SKY

WODBOWARS

Tic-tac-War

Dbo Universe(em desenvolvimento)

}

universe.thumb.png.6840320998d0fc1a4652b3db81a585c0.png

Separador.PNG

Te Ajudei? Rep + e ficamos Quits

imageproxy.png.84dce08dd18d31663a72aa1ce37b858a.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝

NdboHakai

EngSzMi
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/01/19Posts: 37Gênero: Masculino
21 minutos atrás, Yan Liima disse:

To meio ocupado aqui, dá pra fazer isso de várias forma. O ideal seria por um [TownID] antes das numeração das pos, ia ficar bem organizado. Mas fiz uma mini gambiarra aqui, vê se funciona:

local hospitalpos = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1026, y = 981, z = 7},
[3] = {x = 1030, y = 981, z = 7},
}
local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
}
local str = 66666

function onDeath(cid, position)
if isPlayer(cid) then
setPlayerStorageValue(cid, str, 1)
end
return true
end

function onLogin(cid)
if isPlayer(cid) and getPlayerTown(cid) == 0 then --ID da City(TownID)
    if getPlayerStorageValue(cid, str) == 1 then
    setPlayerStorageValue(cid, str, -1)
    doTeleportThing(cid, hospitalpos[math.random(#hospitalpos)], true)
    end
end
if isPlayer(cid) and getPlayerTown(cid) == 1 then --ID da City(TownID)
    if getPlayerStorageValue(cid, str) == 1 then
    setPlayerStorageValue(cid, str, -1)
    doTeleportThing(cid, hospitalpos2[math.random(#hospitalpos2)], true)
    end
end

return true
end

 

Troquei as posições e funcionou, mas quando adicionei +1 posição no hospitalpos2 o jogador não vai para as posições que está marcada, ele vai para a pos do templo '-'

Yan Liima

Scripter,Programador,WebMaster.
avatar
Diretor
Diretor

INFOS

Grupo: DiretorRegistrado: 12/05/12Posts: 818Gênero: MasculinoChar no Tibia: [ADM] Night
34 minutos atrás, NdboHakai disse:

Troquei as posições e funcionou, mas quando adicionei +1 posição no hospitalpos2 o jogador não vai para as posições que está marcada, ele vai para a pos do templo '-'

Deu algum erro na distro? Tu deixou assim? exemplo:

local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1021, y = 981, z = 7},
}

 

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

ALGUNS DOS MEUS TRABALHOS:

Spoiler

WODBOHS[DOWNLOAD]

Newstory dbo+nto+bleach[DOWNLOAD]

 

>> Mais infos <<

- Projetos lançados também feitos por mim {

DBO SKY

POKE SKY

WODBOWARS

Tic-tac-War

Dbo Universe(em desenvolvimento)

}

universe.thumb.png.6840320998d0fc1a4652b3db81a585c0.png

Separador.PNG

Te Ajudei? Rep + e ficamos Quits

imageproxy.png.84dce08dd18d31663a72aa1ce37b858a.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝

NdboHakai

EngSzMi
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/01/19Posts: 37Gênero: Masculino
36 minutos atrás, Yan Liima disse:

Deu algum erro na distro? Tu deixou assim? exemplo:

local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1021, y = 981, z = 7},
}

 

é não deu error na distro e sim deixei assim

NdboHakai

EngSzMi
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 23/01/19Posts: 37Gênero: Masculino
Em 12/03/2019 em 18:41, Yan Liima disse:

Deu algum erro na distro? Tu deixou assim? exemplo:

local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1021, y = 981, z = 7},
}

 

Me ajuda :/

Yan Liima

Scripter,Programador,WebMaster.
avatar
Diretor
Diretor

INFOS

Grupo: DiretorRegistrado: 12/05/12Posts: 818Gênero: MasculinoChar no Tibia: [ADM] Night
26 minutos atrás, NdboHakai disse:

Me ajuda :/

Estranho era pra funcionar. Tenta tirar a ultima virgula:

local hospitalpos2 = {
[1] = {x = 1021, y = 981, z = 7}, -- posições pra onde o player será teleportado ao morrer
[2] = {x = 1021, y = 981, z = 7}
}

 

════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═══╗

ALGUNS DOS MEUS TRABALHOS:

Spoiler

WODBOHS[DOWNLOAD]

Newstory dbo+nto+bleach[DOWNLOAD]

 

>> Mais infos <<

- Projetos lançados também feitos por mim {

DBO SKY

POKE SKY

WODBOWARS

Tic-tac-War

Dbo Universe(em desenvolvimento)

}

universe.thumb.png.6840320998d0fc1a4652b3db81a585c0.png

Separador.PNG

Te Ajudei? Rep + e ficamos Quits

imageproxy.png.84dce08dd18d31663a72aa1ce37b858a.png

Precisando de ajuda?

discord.png.1ecd188791d0141f74d99db371a2e0a4.pngDiscord: Yan Liima #3702

Programador Júnior de LUA, PHP e JavaScript

Juntos somos lendas, separados somos Mitos!

╚══════════════════════════ҳ̸Ҳ̸ҳஜ۩۞۩ஜҳ̸Ҳ̸ҳ═════════════════════════════╝