Criando Teleporte - RPG/RP - Entrar e Sair de Interiores -
GustavoBonomo - 14.12.2011
Olб Galerinha do SA-MP
Bem, o Titulo jб diz Tudo ! Entгo Vamos lб, o Tele serб Realizado com /cmd e a Tecla F. Sгo Apenas 3 Passos =D
Bem, primeiramente Precisamos Definir as cores Se nгo Vai dar Erro quando FOR Compilar, coloque o COD seguinte no Topo de seu GM:
pawn Код:
#define VERMELHO 0xAA3333AA
#define AMARELO 0xFFFF00AA
#define BRANCO 0xFFFFFFAA
#define ROXO 0x9900FFAA
Defini mais de uma Cor caso Vocк queira usar Outras Cores...
Apуs ter Definido as Cores vocк Precisa das Coordenadas de Entrada e Saнda do Local e o Interior de Ambos ( No meu Caso й uma Boate ). Procure a public "OnPlayerCommandText" e coloque o COD a Seguir ( Entrando e Saindo do Local ):
pawn Код:
// Entrando da Boate ( Ou seja Lб o que Vocк Quiser )
if(strcmp(cmdtext, "/entrar", true) == 0) // Aqui vocк Coloca o Comando que Quiser ! ( Para Entrar )
{
if(IsPlayerInRangeOfPoint(playerid, 4.0, 836.20001220703, -2697, 12.89999961853))// Esse IF faz com que os Comandos Abaixo sejam Exedcutados Apenas se o Player estiver no Local das Coords que vocк Colocou
{
SetPlayerInterior(playerid, 17); // Setando o Interior ao Entrar, Procure o ID do Interior do Seu Local !
SetPlayerPos(playerid, 493.39999389648, -24.89999961853, 1000.700012207); // Troque as Coordenadas daqui pelas Coordenadas do seu Comando (IsPlayerInRangeOfPoint) para Sair
SendClientMessage(playerid, AMARELO, "Vocк Entrou na Boate !/n-$1000"); // Manda Uma mensagem Para o Player, Outro Exemplo: Seja Bem Vindo a Boate !
GivePlayerMoney(playerid, -1000); // Esta Funзгo Farб com que o Player Ganhe/Perca Dinheiro ! Edite com quiser !
SetPlayerVirtualWorld(playerid, 1); // Setar Dimensгo do Player para que possa utilizar 1 Interior em mais De 2 Mundos
}
return 1; // Returnando a 1
}
// Saindo da Boate ( Ou seja Lб o que Vocк Quiser )
if(strcmp(cmdtext, "/sair", true) == 0) // Aqui vocк Coloca o Comando que Quiser ! ( Para Sair )
{
if(IsPlayerInRangeOfPoint(playerid, 2.0, 493.39999389648, -24.89999961853, 1000.700012207)) // Esse IF faz com que os Comandos Abaixo sejam Exedcutados Apenas se o Player estiver no Local das Coords que vocк Colocou
{
SetPlayerInterior(playerid, 0); // Setando o Interior ao Sair, na Maioria das Vezes Serб 0 !
SetPlayerPos(playerid, 836.20001220703, -2697, 12.89999961853); // Troque as Coordenadas daqui pelas Coordenadas do seu Comando (IsPlayerInRangeOfPoint) para Entrar
SendClientMessage(playerid, AMARELO, "TCHAU"); // Manda Uma mensagem Para o Player, Outro Exemplo: Volte Sempre a Boate !
SetPlayerVirtualWorld(playerid, 0); // Setar Dimensгo do Player para 0 ( Padrгo )
}
return 1; // Returnando a 1
}
Intendendo Melhor: Por Increнvel que pareзa vocк precisa Apenas de 2 Coordenadas, Dentro e Fora, veja:
836.20001220703, -2697, 12.89999961853 - Coordenadas de FORA
493.39999389648, -24.89999961853, 1000.700012207 Coordenadas de DENTRO
As Coordenadas de FORA serгo usadas para "SetPlayerPos" para o comando /sair e "IsPlayerInRangeOfPoint" do Comando /entrar =D
As Coordenadas de DENTRO serгo usadas para "SetPlayerPos" para o comando /entrar e "IsPlayerInRangeOfPoint" do Comando /sair =D
Entenderam ?
Agora vamos colocar para Entrar/Sair com a Tecla "F" muito usado em Servidores de RP/RPG, procure pela public "OnPlayerKeyStateChange" e Adicione o Seguinte COD:
pawn Код:
if ((newkeys==KEY_SECONDARY_ATTACK)) // Key ( F / Enter ) a Pй
{
OnPlayerCommandText(playerid,"/entrar"); // Ao Apertar "F" Funcionarб o Comando que Calocou Ali
OnPlayerCommandText(playerid,"/sair"); // Ao Apertar "F" Funcionarб o Comando que Calocou Ali
// Outras Funзхes com a Tecla F/ENTER coloque Aqui
}
return 1;
}
}
Pronto, seu Tele esta Pronto!!!
CRЙDITOS: 100% by Gustavo_Bonomo
Re: Criando Teleporte - RPG/RP -
Kuddy - 14.12.2011
Bem explicado, porйm alйm de simples, nгo tem muita utilidade...
O nome do tуpico deveria ser entrar e sair de interiores... Mais fбcil dos novatos acharem
Existem maneiras mais otimizadas de fazer isso
Re: Criando Teleporte - RPG/RP -
Laercio - 14.12.2011
Isto й um Codigo Util .
Poderia te ro Postado em Codigos Uteis
Re: Criando Teleporte - RPG/RP -
Lуs - 14.12.2011
Quote:
Originally Posted by GustavoBonomo
pawn Код:
// Entrando da Boate ( Ou seja Lб o que Vocк Quiser ) if(strcmp(cmdtext, "/entrar", true) == 0) // Aqui vocк Coloca o Comando que Quiser ! ( Para Entrar ) { if(IsPlayerInRangeOfPoint(playerid, 4.0, 836.20001220703, -2697, 12.89999961853))// Esse IF faz com que os Comandos Abaixo sejam Exedcutados Apenas se o Player estiver no Local das Coords que vocк Colocou { SetPlayerInterior(playerid, 17); // Setando o Interior ao Sair, na Maioria das Vezes Serб 0 ! SetPlayerPos(playerid, 493.39999389648, -24.89999961853, 1000.700012207); // Troque as Coordenadas daqui pelas Coordenadas do seu Comando (IsPlayerInRangeOfPoint) para Sair SendClientMessage(playerid, COLOR_RED, "BOATE"); // Manda Uma mensagem Para o Player, Outro Exemplo: Seja Bem Vindo a Boate ! GivePlayerMoney(playerid, -1000); // Esta Funзгo Farб com que o Player Ganhe/Perca Dinheiro ! Edite com quiser ! } return 1; // Returnando a 1 }
// Saindo da Boate ( Ou seja Lб o que Vocк Quiser ) if(strcmp(cmdtext, "/sair", true) == 0) // Aqui vocк Coloca o Comando que Quiser ! ( Para Sair ) { if(IsPlayerInRangeOfPoint(playerid, 2.0, 493.39999389648, -24.89999961853, 1000.700012207)) // Esse IF faz com que os Comandos Abaixo sejam Exedcutados Apenas se o Player estiver no Local das Coords que vocк Colocou { SetPlayerInterior(playerid, 0); // Setando o Interior ao Sair, na Maioria das Vezes Serб 0 ! SetPlayerPos(playerid, 836.20001220703, -2697, 12.89999961853); // Troque as Coordenadas daqui pelas Coordenadas do seu Comando (IsPlayerInRangeOfPoint) para Entrar SendClientMessage(playerid, COLOR_RED, "TCHAU"); // Manda Uma mensagem Para o Player, Outro Exemplo: Volte Sempre a Boate ! } return 1; // Returnando a 1 }
|
Vai dar warning pois a "COLOR_RED" nгo estб definida.
Bom tutorial, menos erros dessa vez.
Re: Criando Teleporte - RPG/RP -
GustavoBonomo - 14.12.2011
TOPICO PRINCIPAL EDITADO 14/12/2011 14:22
--------------------------------------------------------------------------------------------------------------
Quote:
Bem explicado, porйm alйm de simples, nгo tem muita utilidade...
O nome do tуpico deveria ser entrar e sair de interiores... Mais fбcil dos novatos acharem
Existem maneiras mais otimizadas de fazer isso
|
Sim, a maneira muito mais Simples, mas queria que tambйm Fosse possнvel utilizar /cmd pois Muitas vezes, ao Apertar F vocк Entra e ao Mesmo tempo Sai do Local ...
Quote:
Isto й um Codigo Util .
Poderia te ro Postado em Codigos Uteis
|
Vocк pode Achar Cуdigo Ъtil, mas isso pode Realmente ajudar muitas Pessoas que estгo comeзando agora...
@EDIT
Quote:
Originally Posted by Los
Vai dar warning pois a "COLOR_RED" nгo estб definida.
Bom tutorial, menos erros dessa vez.
|
Eu jб Sabia, mas tive que sair, agora jб Estou de volta e Jб Consertei =D
Re: Criando Teleporte - RPG/RP -
BrunoBSF - 14.12.2011
mais facim vc criar um tuto encinando a criar um tele q possa entrar em locais diferentes sem bugar com os mesmos interiores
Re: Criando Teleporte - RPG/RP -
GustavoBonomo - 14.12.2011
TOPICO PRINCIPAL EDITADO 14/12/2011 - 14:49
--------------------------------------------------------------------------------------------------------------------
Quote:
Originally Posted by BrunoBSF
mais facim vc criar um tuto encinando a criar um tele q possa entrar em locais diferentes sem bugar com os mesmos interiores
|
Nгo Man, й um Tele para Servidores RP/RPG, nгo Servidores de Mata-Mata com /drop ETC... Leia o Tнtulo...
Re: Criando Teleporte - RPG/RP -
GustavoBonomo - 14.12.2011
TOPICO PRINCIPAL EDITADO 14/12/2011 - 18:13
Re: Criando Teleporte - RPG/RP -
euclaro - 14.12.2011
Cara, nao precisa da esses doublepost, otimo tutorial
Re: Criando Teleporte - RPG/RP -
GustavoBonomo - 14.12.2011
Quote:
Originally Posted by euclaro
Cara, nao precisa da esses doublepost, otimo tutorial
|
Mals ae, nem vi o Double, e valew, se Gostou +REP