13.02.2013, 17:51
Business
- Нndice- O que й msi_business?
- O que й msi_business?
- Onde posso encontra-la?
- Como utilizar?
- Configuraзхes
- Funзхes
- Criando uma empresa
- Pastas necessбrias
- Onde posso encontra-la?
- msi_business й uma include desenvolvida por Larceny e Lуs e tem como o objetivo conceder facilidade e simplicidade para criar e manusear empresas no jogo.
- Como utilizar?
- A include faz parte da livraria MSi(Master Server Includes) e pode ser encontrada neste tуpico.
- Configuraзхes
- Para utilizar esta include, simplesmente а inclua include a seu script:
pawn Код:#include <MSi\msi_business>- Funзхes
- Caso preferir, certos valores podem ser configurados, sendo eles quantia mбxima de empresas e tamanho mбximo do nome da empresa, definindo ACIMA da include os seguintes cуdigos:
pawn Код:#define MAX_BUSINESS (QUANTA_MAXIMA_DE_EMPRESAS)
#define MAX_BUSINESS_NAME (QUANTIA_MAXIMA_DE_LETRAS)- Exemplo:
pawn Код:#define MAX_BUSINESS 25
#define MAX_BUSINESS_NAME 64- O cуdigo acima define que a quantia mбxima de empresas que podem ser criadas sгo 25 e o tamanho mбximo do nome de uma empresa й de 64 caracteres.
- Por padrгo, a quantia mбxima de empresas que podem ser criadas sгo 50 e o tamanho mбximo do nome da empresa й de 64 chars.
- Criando uma empresa
- CreateBusiness(Float:Enterx, Float:Entery, Float:Enterz, Float:Entera, Float:Exitx, Float:Exity, Float:Exitz, Float:Exita, enterinterior = 0, exitinterior = 0, locked = 0, price = 0, cash = 0, owned = 0, owner[] = "Ninguem", name[] = "Indefinido");
- Enterx: Coordenada X da entrada da empresa.
- Entery: Coordenada Y da entrada da empresa.
- Enterz: Coordenada Z da entrada da empresa.
- Entera: Вngulo da entrada da empresa.
- Exitx: Coordenada X da saнda da empresa.
- Exity: Coordenada Y da saнda da empresa.
- Exitz: Coordenada Z da saнda da empresa.
- Exita: Вngulo da saнda da empresa.
- enterinterior: ID do interior do exterior da empresa.
- exitinterior: ID do interior do interior da empresa.
- locked: Empresa trancada ou destrancada.
- price: Preзo da empresa.
- cash: Quantia no cofre da empresa.
- owned: Empresa comprada.
- owner[]: Nome do dono da empresa.
- name[]: Nome da empresa.
- Obs. Apenas as coordenadas sгo obrigatуrias nesta funзгo! O resto й OPCIONAL!
- Criando uma empresa:
pawn Код:CMD:criarempresa(playerid, params[])
{
CreateBusiness(10.0, 248.0, 457.5, 0.0, 0.0, 0.0, 0.0, 0.0);
// Cria uma empresa em algum lugar
}- SetBusinessEntrancePos(businessid, Float:x, Float:y, Float:z, Float:a)
- businessid: ID da empresa que terб a posiзгo alterada.
- x: Coordenada X da entrada da empresa.
- y: Coordenada Y da entrada da empresa.
- z: Coordenada Z da entrada da empresa.
- a: Angulф da entrada da empresa.
- Esta funзгo altera a posiзгo da entrada de uma empresa, exemplo:
pawn Код:CMD:alterar_entrada_da_empresa_id_zero(playerid, params[])
{
SetBusinessEntrancePos(0, 4574.0, 124.0, 1155.0, 158.0)
// Altera o local da entrada da empresa ID 0
}- GetBusinessEntrancePos(businessid, &Float:x, &Float:y, &Float:z, &Float:a)
- businessid: ID da empresa que terб a posiзгo obtida.
- x: Coordenada X da entrada da empresa, passa por referкncia.
- y: Coordenada Y da entrada da empresa, passa por referкncia.
- z: Coordenada Z da entrada da empresa, passa por referкncia.
- a: Angulф da entrada da empresa, passa por referкncia.
- Esta funзгo obtйm as coordenadas da entrada de uma empresa e passa o valor para outra variбvel, exemplo:
pawn Код:CMD:obter_coord_empresa_zero(playerid, params[])
{
new Float:bizPos[4];
GetBusinessEntrancePos(0, bizPos[0], bizPos[1], bizPos[2], bizPos[3])
// Armazena as coordenadas da entrada da empresa na array bizPos.
}- SetBusinessExitPos(businessid, Float:x, Float:y, Float:z, Float:a)
- businessid: ID da empresa que terб a posiзгo alterada.
- x: Coordenada X da saнda(interior) da empresa.
- y: Coordenada Y da saнda(interior) da empresa.
- z: Coordenada Z da saнda(interior) da empresa.
- a: Angulф da saнda(interior) da empresa.
- Esta funзгo altera a posiзгo da saнda(interior) de uma empresa, exemplo:
pawn Код:CMD:alterar_saida_da_empresa_id_zero(playerid, params[])
{
SetBusinessExitPos(0, 574.0, 1244.0, 1002.0, 158.0)
// Altera o local da saнda(interior) da empresa ID 0
}- GetBusinessExitPos(businessid, &Float:x, &Float:y, &Float:z, &Float:a)
- businessid: ID da empresa que terб a posiзгo obtida.
- x: Coordenada X da saнda(interior) da empresa, passa por referкncia.
- y: Coordenada Y da saнda(interior) da empresa, passa por referкncia.
- z: Coordenada Z da saнda(interior) da empresa, passa por referкncia.
- a: Angulф da saнda(interior) da empresa, passa por referкncia.
- Esta funзгo obtйm as coordenadas da saнda(interior) de uma empresa e passa o valor para outra variбvel, exemplo:
pawn Код:CMD:obter_coord_empresa_zero(playerid, params[])
{
new Float:bizPos[4];
GetBusinessExitPos(0, bizPos[0], bizPos[1], bizPos[2], bizPos[3])
// Armazena as coordenadas da saнda(interior) da empresa na array bizPos.
}- SetBusinessEntranceInterior(businessid, interior)
- businessid: ID da empresa que terб o interior(do exterior) alterado.
- interior: ID do interior.
- Esta funзгo altera o ID do interior(do exterior) de uma empresa, exemplo:
pawn Код:CMD:alterar_interior_empresa(playerid, params[])
{
SetBusinessEntranceInterior(0, 2);
// Altera o interiorid da empresaid 0 para 2.
}- GetBusinessEntranceInterior(businessid)
- businessid: ID da empresa que terб o interior(do exterior) obtido.
- Esta funзгo obtйm o ID do interior(do exterior) de uma empresa, exemplo:
pawn Код:CMD:obter_interior_empresa(playerid, params[])
{
new interiorid = GetBusinessEntranceInterior(0);
// Armazena o ID do interior(do exterior) da empresa 0 na var. interiorid.
}- SetBusinessExitInterior(businessid, interior)
- businessid: ID da empresa que terб o interior(do interior) alterado.
- interior: ID do interior.
- Esta funзгo altera o ID do interior(do interior) de uma empresa, exemplo:
pawn Код:CMD:alterar_interior_empresa(playerid, params[])
{
SetBusinessExitInterior(0, 2);
// Altera o interiorid da empresaid 0 para 2.
}- GetBusinessExitInterior(businessid)
- businessid: ID da empresa que terб o interior(do interior) obtido.
- Esta funзгo obtйm o ID do interior(do interior) de uma empresa, exemplo:
pawn Код:CMD:obter_interior_empresa(playerid, params[])
{
new interiorid = GetBusinessExitInterior(0);
// Armazena o ID do interior(do interior) da empresa 0 na var. interiorid.
}- SetBusinessLocked(businessid, locked)
- businessid: ID da empresa.
- locked: 1 Para trancar a empresa, 0 para destrancar.
- Esta funзгo (des)tranca uma empresa, exemplo:
pawn Код:CMD:trancar_empresa(playerid, params[])
{
SetBusinessLocked(0, true);
// Tranca a empresa ID 0.
}- IsBusinessLocked(businessid)
- businessid: ID da empresa.
- Esta funзгo verifica se uma empresa estб trancada, exemplo:
pawn Код:CMD:empresa_trancada(playerid, params[])
{
if (IsBusinessLocked(0)) print("Empresa ID 0 estб tramcada");
// Verifica se uma ID 0 empresa estб trancada.
}- SetBusinessPrice(businessid, price)
- businessid: ID da empresa.
- price: Preзo a ser definido а empresa
- Esta funзгo altera o preзo de uma empresa, exemplo:
pawn Код:CMD:empresa_valor(playerid, params[])
{
SetBusinessPrice(0, 2500);
// Altera o valor da empresa ID 0 para $2500.
}- GetBusinessPrice(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm o preзo de uma empresa, exemplo:
pawn Код:CMD:empresa_valor(playerid, params[])
{
new empresa_valor = GetBusinessPrice(0);
// Armazena o valor do preзo da empresa ID 0 na var. empresa_valor
}- SetBusinessCash(businessid, value)
- businessid: ID da empresa.
- value: Quantia no cofre da empresa
- Esta funзгo altera a quantia de dinheiro do cofre de uma empresa, exemplo:
pawn Код:CMD:empresa_cofre(playerid, params[])
{
SetBusinessCash(0, 3000);
// Altera a quantia do cofre da empresa ID 0 para $3000.
}- GetBusinessCash(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm a quantia de dinheiro no cofre de uma empresa, exemplo:
pawn Код:CMD:empresa_cofre(playerid, params[])
{
new empresa_cofre = GetBusinessCash(0);
// Armazena o valor do cofre da empresa ID 0 na var. empresa_valor
}- SetBusinessOwned(businessid, owned)
- businessid: ID da empresa.
- owned: 1 para definir que tem dono, 0 para definir que nгo tem dono
- Esta funзгo define se uma empresa tem dono ou nгo, exemplo:
pawn Код:CMD:empresa_dono(playerid, params[])
{
SetBusinessOwned(0, true);
// Define que a empresa ID 0 tem dono.
}- IsBusinessOwned(businessid)
- businessid: ID da empresa.
- Esta funзгo verifica se uma empresa tem dono ou nгo, exemplo:
pawn Код:CMD:empresa_dono(playerid, params[])
{
if (IsBusinessOwned(0)); print("A empresa ID 0 tem dono.");
// Verifica se a empresa ID 0 tem dono.
}- SetBusinessOwner(businessid, owner[])
- businessid: ID da empresa.
- owner[]: Nome do dono da empresa
- Esta funзгo altera o nome do dono da empresa, exemplo:
pawn Код:CMD:empresa_dono(playerid, params[])
{
SetBusinessOwner(0, "Charles_Ricken");
// Altera o nome do dono da empresa ID 0 para Charles_Ricken.
}- GetBusinessOwner(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm o nome do dono da empresa, exemplo:
pawn Код:CMD:empresa_dono(playerid, params[])
{
printf("O nome do dono da empresa ID 0 й %s", GetBusinessOwner(0));
// Imprimi o nome do dono da empresa ID 0 no console.
}- SetBusinessName(businessid, name[])
- businessid: ID da empresa.
- name[]: Nome da empresa
- Esta funзгo altera o nome da empresa, exemplo:
pawn Код:CMD:empresa_nome(playerid, params[])
{
SetBusinessName(0, "Restaurante - Prato feito");
// Altera o nome do dono da empresa ID 0 para Restaurante - Prato feito.
}- GetBusinessName(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm o nome da empresa, exemplo:
pawn Код:CMD:empresa_nome(playerid, params[])
{
printf("O nome da empresa ID 0 й %s", GetBusinessName(0));
// Imprimi o nome da empresa ID 0 no console.
}- SetBusinessProducts(businessid, prods)
- businessid: ID da empresa.
- prods: Quantia de produtos da empresa
- Esta funзгo altera a quantia de produtos de uma empresa, exemplo:
pawn Код:CMD:empresa_prods(playerid, params[])
{
SetBusinessProducts(0, 1000);
// Altera a quantia de produtos da empresa ID 0 para 1000.
}- GetBusinessProducts(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm a quantia de produtos de uma empresa, exemplo:
pawn Код:CMD:empresa_prods(playerid, params[])
{
new empresa_prods = GetBusinessProducts(0);
// Armazena o valor de produtos da empresa ID 0 na var. empresa_prods
}- GetBusinessPickupID(businessid)
- businessid: ID da empresa.
- Esta funзгo obtйm o ID do pickup de uma empresa, exemplo:
pawn Код:CMD:empresa_pickup(playerid, params[])
{
printf("O ID do pickup da empresa ID 0 й %i", GetBusinessPickupID(0));
// Imprimi o ID da empresa ID 0 no console.
}- SaveBusinessData(businessid)
- businessid: ID da empresa.
- Esta funзгo salva os dados de uma empresa, exemplo:
pawn Код:CMD:salvar_empresas(playerid, params[])
{
new i = 0;
while(i < MAX_BUSINESS)
SaveBusinessData(i), i++;
// Salva os dados de todas as empresas do servidor
}- LoadBusinessData(businessid)
- businessid: ID da empresa.
- Obs. Caso a empresa carregada exista ela serб criada automaticamente!
- Esta funзгo carrega os dados de uma empresa, exemplo:
pawn Код:CMD:carregar_empresas(playerid, params[])
{
new i = 0;
while(i < MAX_BUSINESS)
LoadBusinessData(i), i++;
// Carrega os dados de todas as empresas do servidor
}- Pastas necessбrias
- Para criar uma empresa tudo que vocк precisa fazer й usar a funзгo CreateBusiness, exemplo:
pawn Код:CMD:criarempresa(playerid, params[])
{
new Float:pPos[3];
// Array para armazenar a posiзгo do jogador
GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
// Obtendo a posiзгo do jogador
new nempresaid;
// Variбvel para armazenar o ID da empresa
nempresaid = CreateBusiness(Pos[0], Pos[1], Pos[2], 0.0, 0.0, 0.0, 0.0, 0.0);
// Criando a empresa e armazenando o ID dela na variбvel
SetBusinessName(nempresaid, "Restaurante");
// Definindo o nome da empresa para restaurante
SetBusinessPrice(nempresaid, 2000);
// Definindo o preзo da empresa para $2000
SaveBusinessData(nempresaid);
// Salvando a empresa
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
for (new i = 0; i < MAX_BUSINESS; i++)
// Loop para checar todas as empresas
{
if(GetBusinessPickupID(i) == pickupid)
// Verificando se um jogador pisou no pickup de uma empresa
{
new string[180];
format(string, sizeof(string), "~b~~h~~h~~h~Esta empresa esta a venda!~n~~w~Nome: ~y~%s ~n~~w~Valor: ~y~%i", GetBusinessName(i), GetBusinessPrice(i));
GameTextForPlayer(playerid, string, 3500, 3);
// Mostrando os detalhes da empresa
return 1;
}
}
return 1;
}- Simples assim, o cуdigo acima geraria um resultado similar a este:
- Й necessбrio ter a pasta "MSi/business" em sua pasta scriptfiles para poder salvar e carregar as empresas.