[INC]KHouse - Funзхes para criaзгo de casas. - rjjj - 13.03.2011
[INC]KHouse - Funзхes para criaзгo de casas.
Crйditos б:
* rjjj ou [iPs]Ken pela include.
* [iPs]Team.
|| Projeto [iPs] TeaM ||
Bom, vi que muitos estava atrбs de sistema de casas, entгo fiz essa include com funзхes para criaзгo de casas e outras coisas relacionadas бs mesmas.
Ela tem algumas funзхes da 0.3c
Para instalar a include no seu GM, coloque o arquivo KHouse.inc (download no final do tуpico) na pasta include do seu pawno e depois coloque no topo do seu GM/FS:
#include <KHouse>
Notas Importantes:
Use
EnableHousesEnterExits(playerid) para fazer com que o jogador entre na casa na qual ele estб parado na frente (na porta, exatamente
![Tongue](images/smilies/razz.gif)
).
Exemplo, colocando pra entrar nas casas apertando F (muito comum hoje em dia
![afro](images/smilies/mrgreen.gif)
):
Exemplo:
pawn Код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys == KEY_SECONDARY_ATTACK)
{
EnableHousesEnterExits(playerid);
}
return 1;
}
Funзхes e suas explicaзхes:
pawn Код:
EnableHousesEnterExits(playerid);//Teleporta o jogador para dentro/fora da casa na qual ele estб na entrada/saida.
AddStaticHouse(houseid,Float:EntradaX,Float:EntradaY,Float:EntradaZ,Float:SaidaX,Float:SaidaY,Float:SaidaZ,InteriorID,VirtualWorldID);//Cria uma casa. O parametro houseid deve ser maior que 0 e menor que o Limite de casas. Deve ser usada de preferкncia no OnGameModeInit/OnFilterScriptInit.
SetHouseOwner(houseid,playerid);//Define o dono da casa. O parametro 'playerid' refere-se ao ID do jogador que serб dono.
SetHouseFree(houseid,playerid);//Vende a casa, ou seja, coloca-a como dono 'Ninguem'.
SetHousePrice(houseid,valor);//Define o preзo da casa.
SetHouseText(houseid,text[]);//Define a texto de entrada da casa. Pode ser coisas como 'Bem Vindo' ou "Casa de 4 quartos".
SetHouseRequiredScore(houseid,score);//Define o Score requerido para se comprar a casa casa.
AddVehicleToHouse(houseid,modelid,Float:X,Float:Y,Float:Z,Float:Angulo,color1,color2);//Adiciona um veнculo para determinada casa. Funзгo deve ser usada de preferкncia no OnGameModeInit/OnFilterScriptInit.
SetVehicleHouseInfo(houseid,modelid,Float:X,Float:Y,Float:Z,Float:Angulo,color1,color2);//Redefine as informaзхes do veнculo da casa selecionada. Bom para ser usada em caso de definir a pintura do veнculo,etc.
GetHouseOwner(houseid);//Captura o nome do dono da casa e retorna o mesmo em forma de variбvel de texto (string). Bom para usar com strcmp para checar se um jogador й dono da casa etc.
GetHousePrice(houseid);//Captura o preзo da casa e retorna o mesmo em forma de nъmero (integer). Bom para ser usados com if para checar o dinheiro do jogador etc.
GetHouseRequiredScore(houseid);//Captura o score ne da casa e retorna o mesmo em forma de nъmero (integer). Bom para ser usado com ifs para checar o score do jogador etc.
GetHouseVehicleID(houseid);//Captura o ID do veнculo de determinada casa e retorna o mesmo em forma de nъmero (integer).
LockHouse(houseid);//Tranca uma casa. Obs: As casas jб sгo fechadas quando o gamemode й carregado.
UnLockHouse(houseid);//Destranca uma casa.
LockVehicleHouse(houseid)//Tranca o veiculo de uma casa.
UnLockVehicleHouse(houseid)//Destranca o veiculo de uma casa.
LockAllVehicleHouse();//Tranca os veнculos de todas as casas.
UnLockAllVehicleHouse();//Destranca os veнculos de todas as casas.
Observaзхes importantes:
Importante lembrar que o
houseid das funзхes, deve ser maior que 0 e menor que 400 (limite de casas, pode ser mudado dentro do include).
As funзхes sу poderгo ser usadas se a casa de tal
houseid existir ou seja, se o vocк a tiver criado com AddStaticHouse (use de preferкncia no OnGameModeInit).
Exemplo:
pawn Код:
public OnGameModeInit()
{
AddStaticHouse(1,2053.2864,844.4843,6.4813,2393.1638,-1646.0626,13.9051,8,0);//Criarб a casa de ID 1.
AddVehicleToHouse(1,560,2053.2864+2,844.4843+2,6.4813,294.4047,79,79);//Adicionarб um carro para a casa de ID 1.
SetHouseText(1,"Casa de 4 Quartos");//Definirб o texto de entrada da casa de ID 1.
return 1;
}
Obs: A include foi testada, mas qualquer problema ou dъvida por favor, perguntar aqui no tуpico.
Download:
Clique Aqui
Obs: Nгo retire os crйditos jamais !!!
Obs: Qualquer bug, por favor, me avisar por PM ou no tуpico mesmo !!
E й isso galera, espero que tenham gostado
Agradecimentos: [iPs]TeaM.
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
bruno-style - 13.03.2011
Nossa, Otima Include 10/10
Testei aqui
PARABENS!
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
JonathanFeitosa - 13.03.2011
Muito Bom
![Cheesy](images/smilies/biggrin.png)
10/10
@OffTopic
Ken Qual akele programa que move objeto mesmo ?
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Ricop522 - 13.03.2011
Bom. 9/10
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Josma_cmd - 13.03.2011
Nгo testei, mas parece ser уtimo, facilita muito na hora de criar casa.(Apesar de que hoje em dia ja existe o /criarcasa)
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
[Ips]Guh - 13.03.2011
Otima Include Ken..
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Falcon. - 13.03.2011
Muito boa include..Parabйns..уtimo trabalho ^^
================================
Quote:
Originally Posted by Jonathan_Feitosa
@OffTopic
Ken Qual akele programa que move objeto mesmo ?
|
HoldStudio ??
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
JonathanFeitosa - 13.03.2011
й o hold ele me falou pelo msn ^^
muito bom ken dnv 10/10
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
[AF]Junior - 13.03.2011
Valeu cara, tava procurando uma boa include dessa... Vamos ver =)
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Kruger - 13.03.2011
Nuss KEN ..
Meus Parabens !!
Vooce E Muito Bom Em Script ..
Re: [INC]KHouse - Funзхes para criaзгo de casas. - rjjj - 13.03.2011
Muito Obrigado a Todos
![Tongue](images/smilies/razz.gif)
!!
Qualquer dъvida ou problema, poste aqui no tуpico para que o(a) mesmo(a) seja resolvido(a)
E as funзхes devem ser usadas em conjunto, ou seja, use SetHouseOwner para tornar um jogador dono da casa que foi criada com AddStaticHouse por exemplo, pois a include й um tipo de sistema de casas.
As pickups, textos 3Ds e outros acompanhamentos das casas sгo criados automaticamente quando a casa й criada.
Espero ter ajudado
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Strong_ADM - 13.03.2011
Parabйns mas ainda continuou com meu sistema de casas 10/10.
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
StreetGT - 13.03.2011
muito bom
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
zSuYaNw - 13.03.2011
bom.
Re: [INC]KHouse - Funзхes para criaзгo de casas. - rjjj - 13.03.2011
Vlw Galera
Include Atualizada.
Coloquei algumas variбveis para checar se a casa foi construнda, assim uma funзгo como por exemplo SetHousePrice sу serб ativada se a casa tiver sido criada antes
Isso evitarб possнveis problemas no funcionamento do cуdigo, pois certas funзхes nгo funcionam corretamente ou crasham outras coisas quando a casa a que elas se referem nгo foi criada
![afro](images/smilies/mrgreen.gif)
.
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Jhones - 04.04.2011
Teria alguma forma de getar o ID da casa?
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Caio_Cartaxo - 04.04.2011
Nгo testei, mais aparenta estб bem foda.
Parabens
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
Jhones - 08.04.2011
Teria alguma forma deu obter o ID da casa?
Tentei.. tentei.. e nгo consegui, o criador da include, ou atй mesmo alguйm aqui do fуrum poderia me ajudar?
Re: [INC]KHouse - Funзхes para criaзгo de casas. -
zSuYaNw - 08.04.2011
тtimo Parabйns ken!!!!
Re: [INC]KHouse - Funзхes para criaзгo de casas. - rjjj - 09.04.2011
Quote:
Originally Posted by Jhones
Teria alguma forma deu obter o ID da casa?
Tentei.. tentei.. e nгo consegui, o criador da include, ou atй mesmo alguйm aqui do fуrum poderia me ajudar?
|
Acho que vocк nгo entendeu como se usa a include
![afro](images/smilies/mrgreen.gif)
, por exemplo, pra criar uma casa, eu coloco no OnGameModeInit:
Код:
AddStaticHouse(53,2053.2864,844.4843,6.4813,2393.1638,-1646.0626,13.9051,8,0);
AddStaticHouse(21,2053.2864,844.4843,6.4813,2393.1638,-1646.0626,13.9051,8,0);
O cуdigo acima criarб a casa de ID 21 e a de ID 53, como pode ver, vocк mesmo que define o ID da casa e todas as funзхes sгo utilizadas com base no conhecimento que vocк tem a respeito de esses IDs serem os de tais casas.
Entгo nгo consigo imaginar o porque de querer obter o ID da casa, se vocк mesmo jб sabe dele
![Tongue](images/smilies/razz.gif)
.
Talvez seja algo como pegar o ID da casa de um jogador se ele for o dono dela, para isso basta fazer um loop:
pawn Код:
//Essa funзгo retorna um ID da casa de um jogador, se ele for dono de alguma.
stock PegarIdDaCasaDoCara(playerid)
{
new NomePossivelDonoCasa[MAX_PLAYER_NAME];
GetPlayerName(playerid,NomePossivelDonoCasa,MAX_PLAYER_NAME);
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(strcmp(NomePossivelDonoCasa, (GetHouseOwner(x)), true) == 0)
{
return (x);
}
}
return 0;
}
Explique melhor sua dъvida
![afro](images/smilies/mrgreen.gif)
.
Obrigado a todos mais uma vez
![Tongue](images/smilies/razz.gif)
.
Espero ter ajudado
![Tongue](images/smilies/razz.gif)
.