Jump to content

script DaVe House System include


ĐaVe

Recommended Posts

zdarec :d tak jsem se nudil na pc tak mě napadlo se vrhnout do pawna udělat projetk, co ulehčí hodně pawnění lidem, kteří dělají módy....

povedlo se, ani to nebylo těžké a svůj nápad se mi povelo napawnit, otestovat a opravit chyby....

 

o co se tedy jedná:

 

DaVe House System include
-nejlehčí tvourba house systému, která ušetří čas a úsilí autorů módů
-tvorba domu jedinou funkcí CreateDaveHouse

 

*Jak na to?
1) napiseme do vaseho modu upne nahoru #include <DHS>

2) musime priradit funkce do publicu nasledovne:
public OnGameModeInit()
{
DHS_OnGameModeInit();
}

public OnGameModeExit()
{
DHS_OnGameModeExit();
}

public OnPlayerConnect(playerid)
{
DHS_OnPlayerConnect(playerid);
}

 

public OnPlayerSpawn(playerid)
{
DHS_OnPlayerSpawn(playerid);
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
DHS_OnPlayerPickUpPickup(playerid, pickupid);
}

public OnPlayerSelectedMenuRow(playerid, row)
{
DHS_OnPlayerSelectedMenuRow(playerid, row);
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
DHS_OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
}

3) vyuzijeme funkci(tuto funkci zadavame do public GameModeInit() ve vasem modu):
CreateDaveHouse(mapicon,pickupid,cena,Float:X,Float:Y,Float:Z,interiorid,Float:InteriorX,Float:InteriorY,Float:InteriorZ,HomeVirtualWorld)

mapicon = ikona na mape
pickupid = id pickupu domu
cena = vase nastaveni ceny napr 100000 (piste bez mezer a bez uvozovek)
Float:X,Float:Y,Float:Z = pozice pickupu domu
interiorid = id interioru domu
Float:InteriorX,Float:InteriorY,Float:InteriorZ = pozice interioru, pripadne pozice, kam hrac bude presunut
HomeVirtualWorld = vami zvolene id VirtualWorld

4) upravime definici MAX_HOUSES na vami vyuzity pocet domu v includu:
#define MAX_HOUSES [vas pocet domu]
priklad:
#define MAX_HOUSES 45

 

jednoduchý příklad:

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#include <a_samp>
#include <DHS>


main()
{
	print("\n----------------------------------");
	print(" Testovani DaVe House Systemu");
	print("----------------------------------\n");
}


public OnGameModeInit()
{
	DHS_OnGameModeInit();
	SetGameModeText("Test DHS");
	AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	//CreateDaveHouse(mapicon,pickupid,cena,Float:X,Float:Y,Float:Z,interiorid,Float:InteriorX,Float:InteriorY,Float:InteriorZ,HomeVirtualWorld)
    CreateDaveHouse(31,1273,10000,2023.5649,1351.8125,10.4281,1,1.808619,32.384357,1199.593750,1);
    CreateDaveHouse(31,1273,15000,2025.3787,1333.8335,10.6196,7,302.292877,-143.139099,1004.062500,1);
    CreateDaveHouse(31,1273,13000,2088.8579,1450.0409,10.8203,15,2215.454833,-1147.475585,1025.796875,1);
	return 1;
}

public OnGameModeExit()
{
	DHS_OnGameModeExit();
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
	SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
	return 1;
}

public OnPlayerConnect(playerid)
{
    DHS_OnPlayerConnect(playerid);
    return 1;
}

public OnPlayerSpawn(playerid)
{
    DHS_OnPlayerSpawn(playerid);
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
	if (strcmp("/mycommand", cmdtext, true, 10) == 0)
	{
		GivePlayerMoney(playerid,10000);
		return 1;
	}
	return 0;
}


public OnPlayerPickUpPickup(playerid, pickupid)
{
    DHS_OnPlayerPickUpPickup(playerid, pickupid);
	return 1;
}


public OnPlayerSelectedMenuRow(playerid, row)
{
    DHS_OnPlayerSelectedMenuRow(playerid, row);
	return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    DHS_OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
	return 1;
}

Nezbývá než popřát dobré využití mého includu a klidné a povedené pawnění


DOWNLOAD DHS

//EDITED 6.2.2015 pro opravu bugu

//EDITED 25.3.2015 pro opravu download linku po smazani all souboru pawno.cz

post-8501-0-80326600-1423151060_thumb.png

Edited by ĐaVe
  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

me se libi tvoje odvaha pouziti Menu namisto dialogu, jelikoz dialogy pouziva skoro kazdej HS. je to sice trochu zastarala metoda, ale me se to libi ;)

  • Líbí se mi to! (+1) 3
Link to comment
Share on other sites

jeste dodam, aby se domy ukladaly a nacitaly, musite pri pouziti scriptu vytvorit slozku scriptfiles/DHSDomy


me se libi tvoje odvaha pouziti Menu namisto dialogu, jelikoz dialogy pouziva skoro kazdej HS. je to sice trochu zastarala metoda, ale me se to libi ;)

diky ti :)

Link to comment
Share on other sites

  • Administrátor

Opravdu menu ? :d 

 

CreateDaveHouse to mě celkem pobavilo :)

 

Dej tomu 14 dní a bude tam CreateMivcoHouse 

 

Ale jinak slušná práce.. Nejspíš ale by to chtělo pár upgradů

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

Opravdu menu ? :d

 

CreateDaveHouse to mě celkem pobavilo :)

 

Dej tomu 14 dní a bude tam CreateMivcoHouse 

 

Ale jinak slušná práce.. Nejspíš ale by to chtělo pár upgradů

:d jo ja si taky myslim ze se najdou lidi co si to prepisi :d ale nevadi, jsem rad ze se mi to povedlo dle napadu udelat :) diky :) jasny upgrady budou :) dodelam tam pak ukladani penez,zbrani atd casem :)

Edited by ĐaVe
Link to comment
Share on other sites

  • Administrátor

Ale je to jeden z mála hs co já vím tak jsou tuším asi 3 cz/sk co jsou volně ke stažení.. Já bych svůj na net nedal... .. Takže vylepšuj auta přidej :d 

Link to comment
Share on other sites

Ale je to jeden z mála hs co já vím tak jsou tuším asi 3 cz/sk co jsou volně ke stažení.. Já bych svůj na net nedal... .. Takže vylepšuj auta přidej :d

:d jo s tema autama taky dobrej napad :d

Link to comment
Share on other sites

Vypadá to byť celkom fajn (y) ale ked už niekto robí mod tak si spraví skôr svôj systém ale určite sa bude niekomu hodiť ...a na dalšiu verziu (akbude) tak ti QWER naznačil na čom máš zapracovať ;):d
A mohol by si tam pridať viac veci ako je - uloženie auta pred dom a podobne ^^nech to neni holý dom s lock/un :)
Inak 8/10 :)  :oboci:

Edited by MrShoTys
Link to comment
Share on other sites

QWERe, jediny s cim s tebou souhlasim, je ze jsem tam neudelal stock onplayerspawn a pri onplayerconnectu a spawnu jsem nenastavil promennou ze esi je v baraku na false a taky s tou kontrolou definice... jo taky s tim SetPlayerMapIcon, to vim ze to je omezeny no ale to si mohou uzivatele stahnout streamer map ikonek a prepsat jen

SetPlayerMapIcon

na

CreateDynamicMapIcon

samozrejme musi prehazet dle streameru pozice X Y Z a id map ikonky

 

dale souhlasim ze ty zavorky u fopen jsou tam zbytecne ale to nehraje roli....

 

ten radek co pises VytvorenoDomu+MAX_HOUSES jasne to by taky slo no....

 

Jinak to jak pises ze fexist nekontroluje jestli je ve slozce scriptfiles slozka je kravina.... otevri si pawno a zadej tam:

public OnGameModeInit()
{
   if(!fexist("kravina"))
   {
      printf("slozka kravina neexistuje");
   }else{
      printf("slozka kravina existuje");
   }
   return 1;
}

pak si spust tento mod bez slozky kravina a pak se slozkou kravina a schvalne hadej co ti to napise, a nerikej ze to nejde pouzival jsem to v TT v mych FS a ted jsem to zkousel i kvuli tvymu komentaru....

 

jinak dik za upozorneni s tou definici a promennou... ten streamer bych jim tam pridal ale vem si kolik lidi ma hosting co ma problemy s pluginama... a nekteri ani nevi co to plugin je a proc se jim bez toho nespusti mod... streamer at si tam pridaji jen zajemci, co o to stoji dle me to bude rozumejsi

Edited by ĐaVe
Link to comment
Share on other sites

K streameru... to je taký problém

#if defined Streamer_IncludeFileVersion
CreateDynamicMapIcon či ako to je
#endif

ou lux :) to me nenapadlo :) diky upravim to :d a loadnu :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...