14.01.2011, 15:05
(
Последний раз редактировалось [NWD]Jim._.Carrey; 15.01.2011 в 16:14.
)
Bom pessoal vim por meio deste para ensinar novatos com alguns tipos de teleportes.
Vira e meche tem um ou outro com certas dificuldasdes sobre o assunto.
Vocк diz: Mais como vou saber as coordenadas ?
Eu digo: Pois й facil entre dentro do seu server ou qualquer server SA:MP
vб atй o local desejado para o teleporte e use o comando /save [descriзгo se quiser]
Exemplo: /save Aero LV
vai ficar assim:
AddPlayerClass(28,-86.8734,-1562.0569,2.6107,116.1876,0,0,0,0,0,0); // Aero LV
Vocк diz: Ok Jim atй ai eu entendi mais e agora o que eu faзo ?
Eu digo: Pegue a as coordenadas X, Y, Z as quais vгo setar vocк na posiзгo salva,
Que no caso acima seria:
AddPlayerClass(28, X(-86.8734), Y(-1562.0569), Z(2.6107) ,116.1876,0,0,0,0,0,0); // Aero LV
Ficando assim: (-86.8734,-1562.0569,2.6107)
Vocк diz: E o resto dos nъmeros jim ?
Eu digo: O resto no caso a ultima coordenada que nуs dispensamos й o Angulo que mais para frente
vamos usa-lo e nгo vem ai ao caso agora, e os 0,0,0,0,0 no caso para teleporte nгo serve pra nada.
Agora vamos lб pegamos as coordenadas X, Y, Z, vamos fazer agora o teleporte.
Na public OnPlayerCommandText jб vem um comando simples que falta add algum funзгo dentro
que й esse aqui:
que no telporte simples com as coordenda que nуs pegamos vai ficar assim:
E dentro da public OnPlayerCommandText vai ficar assim:
Em: if (strcmp("/mycommand", cmdtext, true, 10) == 0)
Vocк pode alterar
Assim: if (strcmp("/AeroLV", cmdtext, true, 10) == 0)
E como vocк pode ver o SetPlayerPos й para SetarOPlayerNaPociзгo sу muito burro para nao entender.
Ok ai estб um teleporte simples aonde sу vai dar o teleporte e nada mais:
Agora se vocк quiser add uma mensagem tipo "Bem vindo a Las Ventura" vocк irб usar
o SendClientMessage que manda a mensagem par ao player que usar o comando exemplo:
SendClientMessage(playerid, cor, "Bem vindo a Las Ventura");
Aonde ta escrito cor vocк colocar uma cor exemplo: 0xFF00AA < Essa й verde flourecente
Entre as aspas "Bem vindo a Las Ventura" A mensagem que o player vai receber.
Que irб ficar assim:
Vocк pode usar de varias formas as mensagens exemplos:
Mensagem sу parar o Player й ( SendClientMessage ) Que vocк encontra um exemplo aqui: https://sampwiki.blast.hk/wiki/SendClientMessage
Mensagem para todos ( SendClientMessageToAll ) Que vocк encontra um exemplo aqui: https://sampwiki.blast.hk/wiki/SendClientMessageToAll
Temos tambem o GameText que seria aquelas mensagens na tela com letras grandes, que temos aqui os exemplos:
GameTextForPlayer(playerid, "AERO LV", 5000, 0); Igual а LetrasEnormesPara(PlayerQusarOcomando, "MENSAGEM", TEMPO Em MILISEGUNDOS, FONTE);
No tempo vocк pode usar exemplos como esses:
TEMPO > 1000 = 1 segundo
TEMPO > 2000 = 2 segundos
TEMPO > 10000 = 10 segundos
TEMPO > 60000 = 1 minuto
TEMPO > 300000 = 5 minutos . . . E assim por diante.
Em fonte como esses:
FONTE 0
FONTE 1
FONTE 2
FONTE 3
FONTE 4
FONTE 5
FONTE 6
Agora para voce saber quais sгo as fontes certas vocк pode ver aqui:
https://sampwiki.blast.hk/wiki/GameTextStyle
Bom esses sгo algumas formas apenas existe varias.
Mais agora vamos fazer um teleporte com Interior e VirtualWorld
Oque й Interior ?
Interior й o local aonde o player vai sair conforme o teleporte
que no SA:MP tem seus Interiores e seus ID's.
Para saber o Interior que vocк quer ir e qual й o seu ID vocк pode
olhar aqui como exemplo mais existe muito mais Interirores do que esses
Aqui alguns: http://weedarr.wikidot.com/interior
Esse citado acima ele Mostra (NOME/ID/CORDENADAS X,Y,Z/IMAGEM)
E tbm temos esse aqui:
https://sampwiki.blast.hk/wiki/InteriorIDs
Й um pouco mais complicado mais ъtil basta entender.
Ok atй ai mais o que й VirtualWorld ?
VirtualWorld server para sertar o player em um Interior cujo jб esteja em uso mais em dimensхes diferente
porque pode ocorrer de bugar o player exemplo:
Eu criei uma loja com o Interior id: 5
e criei um pickup dentro desse interior com uma saida que teleporta o player para SF
Sу que eu quero fazer outra loja igual usando os mesmo comando pickups e tals
ai eu criei outro em LS com saida em LV sу que buga a saida e eu saiu em SF
Isso й porque vocк usou o mesmo Interior e nгo definiu um VirtualWorld,
Entгo quando voce entra no interior vai ter nele as funзхes dos dois interior que vocк criou
por exemplo 2 pickups um com a funзгo de setar vocк em SF e outro LV ai pode ocorrer de setar
vocк em LV como SF entгo para nгo acontecer esses conflitos vocк cria um VirtualWorld diferente um do outro.
Bom mais isso й sу uma explicaзгo de levis hehe.
Voltando ao assunto um teleporte para um interior eu escolhi a Madd Doggs mansion:
Madd Doggs mansion ID:5 X: 1267.663208 Y: -781.323242 Z: 1091.906250
Nesse caso vamos usar:
SetPlayerInterior e SetPlayerPos, e um breve exemplo de VirtualWorld.
Agora se quiser setar o player em um VirtualWorld diferente seria assim:
Bom ai estб o exemplo com Interior e VirtualWorld й simples mais pode ajudar.
Agora tem varias formas de pensar voce pode alter o clima/tempo e tals a Wiki e o Forum tem de tudo
e vocк tem varias imaginaзхes basta colocar em pratica ._.
FIM.
Mais pra frente add mais coisas nesse tuto.
Vira e meche tem um ou outro com certas dificuldasdes sobre o assunto.
Vocк diz: Mais como vou saber as coordenadas ?
Eu digo: Pois й facil entre dentro do seu server ou qualquer server SA:MP
vб atй o local desejado para o teleporte e use o comando /save [descriзгo se quiser]
Exemplo: /save Aero LV
vai ficar assim:
AddPlayerClass(28,-86.8734,-1562.0569,2.6107,116.1876,0,0,0,0,0,0); // Aero LV
Vocк diz: Ok Jim atй ai eu entendi mais e agora o que eu faзo ?
Eu digo: Pegue a as coordenadas X, Y, Z as quais vгo setar vocк na posiзгo salva,
Que no caso acima seria:
AddPlayerClass(28, X(-86.8734), Y(-1562.0569), Z(2.6107) ,116.1876,0,0,0,0,0,0); // Aero LV
Ficando assim: (-86.8734,-1562.0569,2.6107)
Vocк diz: E o resto dos nъmeros jim ?
Eu digo: O resto no caso a ultima coordenada que nуs dispensamos й o Angulo que mais para frente
vamos usa-lo e nгo vem ai ao caso agora, e os 0,0,0,0,0 no caso para teleporte nгo serve pra nada.
Agora vamos lб pegamos as coordenadas X, Y, Z, vamos fazer agora o teleporte.
Na public OnPlayerCommandText jб vem um comando simples que falta add algum funзгo dentro
que й esse aqui:
pawn Код:
if(strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Funзгo aqui <
return 1;
}
pawn Код:
if(strcmp("/mycommand", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid, -86.8734,-1562.0569,2.6107);
return 1;
}
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid, -86.8734,-1562.0569,2.6107);
return 1;
}
return 0;
}
Vocк pode alterar
Assim: if (strcmp("/AeroLV", cmdtext, true, 10) == 0)
E como vocк pode ver o SetPlayerPos й para SetarOPlayerNaPociзгo sу muito burro para nao entender.
Ok ai estб um teleporte simples aonde sу vai dar o teleporte e nada mais:
Agora se vocк quiser add uma mensagem tipo "Bem vindo a Las Ventura" vocк irб usar
o SendClientMessage que manda a mensagem par ao player que usar o comando exemplo:
SendClientMessage(playerid, cor, "Bem vindo a Las Ventura");
Aonde ta escrito cor vocк colocar uma cor exemplo: 0xFF00AA < Essa й verde flourecente
Entre as aspas "Bem vindo a Las Ventura" A mensagem que o player vai receber.
Que irб ficar assim:
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/AeroLV", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid, -86.8734,-1562.0569,2.6107);
SendClientMessage(playerid, 0xFF00AA, "Bem vindo a Las Ventura");
return 1;
}
return 0;
}
Mensagem sу parar o Player й ( SendClientMessage ) Que vocк encontra um exemplo aqui: https://sampwiki.blast.hk/wiki/SendClientMessage
Mensagem para todos ( SendClientMessageToAll ) Que vocк encontra um exemplo aqui: https://sampwiki.blast.hk/wiki/SendClientMessageToAll
Temos tambem o GameText que seria aquelas mensagens na tela com letras grandes, que temos aqui os exemplos:
GameTextForPlayer(playerid, "AERO LV", 5000, 0); Igual а LetrasEnormesPara(PlayerQusarOcomando, "MENSAGEM", TEMPO Em MILISEGUNDOS, FONTE);
No tempo vocк pode usar exemplos como esses:
TEMPO > 1000 = 1 segundo
TEMPO > 2000 = 2 segundos
TEMPO > 10000 = 10 segundos
TEMPO > 60000 = 1 minuto
TEMPO > 300000 = 5 minutos . . . E assim por diante.
Em fonte como esses:
FONTE 0
FONTE 1
FONTE 2
FONTE 3
FONTE 4
FONTE 5
FONTE 6
Agora para voce saber quais sгo as fontes certas vocк pode ver aqui:
https://sampwiki.blast.hk/wiki/GameTextStyle
Bom esses sгo algumas formas apenas existe varias.
Mais agora vamos fazer um teleporte com Interior e VirtualWorld
Oque й Interior ?
Interior й o local aonde o player vai sair conforme o teleporte
que no SA:MP tem seus Interiores e seus ID's.
Para saber o Interior que vocк quer ir e qual й o seu ID vocк pode
olhar aqui como exemplo mais existe muito mais Interirores do que esses
Aqui alguns: http://weedarr.wikidot.com/interior
Esse citado acima ele Mostra (NOME/ID/CORDENADAS X,Y,Z/IMAGEM)
E tbm temos esse aqui:
https://sampwiki.blast.hk/wiki/InteriorIDs
Й um pouco mais complicado mais ъtil basta entender.
Ok atй ai mais o que й VirtualWorld ?
VirtualWorld server para sertar o player em um Interior cujo jб esteja em uso mais em dimensхes diferente
porque pode ocorrer de bugar o player exemplo:
Eu criei uma loja com o Interior id: 5
e criei um pickup dentro desse interior com uma saida que teleporta o player para SF
Sу que eu quero fazer outra loja igual usando os mesmo comando pickups e tals
ai eu criei outro em LS com saida em LV sу que buga a saida e eu saiu em SF
Isso й porque vocк usou o mesmo Interior e nгo definiu um VirtualWorld,
Entгo quando voce entra no interior vai ter nele as funзхes dos dois interior que vocк criou
por exemplo 2 pickups um com a funзгo de setar vocк em SF e outro LV ai pode ocorrer de setar
vocк em LV como SF entгo para nгo acontecer esses conflitos vocк cria um VirtualWorld diferente um do outro.
Bom mais isso й sу uma explicaзгo de levis hehe.
Voltando ao assunto um teleporte para um interior eu escolhi a Madd Doggs mansion:
Madd Doggs mansion ID:5 X: 1267.663208 Y: -781.323242 Z: 1091.906250
Nesse caso vamos usar:
SetPlayerInterior e SetPlayerPos, e um breve exemplo de VirtualWorld.
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/MaddDogg", cmdtext, true, 10) == 0)
{
SetPlayerInterior(playerid, 5)// Interior 5 aonde o player irб ser setado.
SetPlayerPos(playerid, 1267.663208,-781.323242,1091.906250);// Aqui й a posiзгo que ele vai spawnar dentro da casa.
SendClientMessage(playerid, 0xFF00AA, "Bem vindo na MADD ALOKS MAN!!");//Mensagem voce pode enfeitar como preferir.
return 1;
}
return 0;
}
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/MaddDogg", cmdtext, true, 10) == 0)
{
SetPlayerInterior(playerid, 5)// Interior 5 aonde o player irб ser setado.
SetPlayerVirtualWorld(playerid, 3);// VirtualWorld pode ser qualquer ID aqui usamos 3 nao muda nada pode usar 999/ 200 como preferir.
SetPlayerPos(playerid, 1267.663208,-781.323242,1091.906250);// Aqui й a posiзгo que ele vai spawnar dentro da casa.
SendClientMessage(playerid, 0xFF00AA, "Bem vindo na MADD ALOKS MAN!!");//Mensagem voce pode enfeitar como preferir.
return 1;
}
return 0;
}
Agora tem varias formas de pensar voce pode alter o clima/tempo e tals a Wiki e o Forum tem de tudo
e vocк tem varias imaginaзхes basta colocar em pratica ._.
FIM.
Mais pra frente add mais coisas nesse tuto.