Kako napraviti ovu vrstu porta molim vas pomozite

Započeo Krimox, April 15, 2020, 19:42:48 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Problem(error/warning): Nije problem ali zanima me kako da napravim ovaj sistem dole.
Dio skripte: [ pawn ]: Kako napraviti marker kada pocetnik dodje do njega to jest igrac manji od lvl 5 otvori mu se sekcija za port na 3 bitne lokacije to jest opstina banka i auto skola
Debug iz server_log(ukoliko je u pitanju crashanje servera - crashdetect log): //
Slika/video ingame problema(obavezno ako je ingame problem): //


Hmmmm, SAMP dozvoljava jedan aktivan marker za svakog igraca. Sta to znaci? To znaci da taj igrac ukoliko mu ostavis taj aktivan marker za port, nece moci da radi poslove koji ukljucuju checkpointe i ostale stvari koje rade putem checkpointa.

Mozda da kreiras actora ili tako nesto, kada bude blizu da klikne dugme i pojavi se port meni??

To bi bilo nesto:

#define DIALOG_POCETNIKPORT NekiID //Definisemo dialog za port

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	//Ako igrac klikne N
	if(newkeys == KEY_NO)
	{
		if(IsPlayerInRangeOfPoint(playerid, 2.0, ActorKoordinataX, ActorKoordinataY, ActorKoordinataZ)) //Proverava ako je kod actora
		{
			if(GetPlayerScore(playerid) < 5) //Proverava da li je ispod lvl-a 5
			{
				ShowPlayerDialog(playerid, DIALOG_POCETNIKPORT, DIALOG_STYLE_LIST, "Pocetnicki Port", "NekaLokacija\nDrugaLokacija\nTreca", "Potvrdi", "Odustani");
			}
		}
	}
	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DIALOG_POCETNIKPORT)
	{
		if(!response) return 0;
		if(response)
		{
			switch(listitem)
			{
				case 0:
				{
					SetPlayerPos(playerid, PrvaLokacijaX, PrvaLokacijaY, PrvaLokacijaZ);
				}
				case 1:
				{
					SetPlayerPos(playerid, DrugaLokacijaX, DrugaLokacijaY, DrugaLokacijaZ);
				}
				case 2:
				{
					SetPlayerPos(playerid, TrecaLokacijaX, TrecaLokacijaY, TrecaLokacijaZ);
				}
			}
		}
	}
}

Citat: V01D poslato April 15, 2020, 19:51:27 POSLE PODNE
Hmmmm, SAMP dozvoljava jedan aktivan marker za svakog igraca. Sta to znaci? To znaci da taj igrac ukoliko mu ostavis taj aktivan marker za port, nece moci da radi poslove koji ukljucuju checkpointe i ostale stvari koje rade putem checkpointa.

Mozda da kreiras actora ili tako nesto, kada bude blizu da klikne dugme i pojavi se port meni??

To bi bilo nesto:

#define DIALOG_POCETNIKPORT NekiID //Definisemo dialog za port

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	//Ako igrac klikne N
	if(newkeys == KEY_NO)
	{
		if(IsPlayerInRangeOfPoint(playerid, 2.0, ActorKoordinataX, ActorKoordinataY, ActorKoordinataZ)) //Proverava ako je kod actora
		{
			if(GetPlayerScore(playerid) < 5) //Proverava da li je ispod lvl-a 5
			{
				ShowPlayerDialog(playerid, DIALOG_POCETNIKPORT, DIALOG_STYLE_LIST, "Pocetnicki Port", "NekaLokacija\nDrugaLokacija\nTreca", "Potvrdi", "Odustani");
			}
		}
	}
	return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DIALOG_POCETNIKPORT)
	{
		if(!response) return 0;
		if(response)
		{
			switch(listitem)
			{
				case 0:
				{
					SetPlayerPos(playerid, PrvaLokacijaX, PrvaLokacijaY, PrvaLokacijaZ);
				}
				case 1:
				{
					SetPlayerPos(playerid, DrugaLokacijaX, DrugaLokacijaY, DrugaLokacijaZ);
				}
				case 2:
				{
					SetPlayerPos(playerid, TrecaLokacijaX, TrecaLokacijaY, TrecaLokacijaZ);
				}
			}
		}
	}
}


Hvala brate evo odo isprobat da napravim pa evo ja napisem ako mi radi jos jednom hvala mnogo


Ne treba nijedan..

Zaboravio sam kreiranje samog actora :D :D

Pod OnGameModeInit dodaj:

CreateActor(modelid, Float:X, Float:Y, Float:Z, Float:Rotation); //Ovde ubacujes sta sve treba, prvi parametar je skin, ostale mozes naci kada /save poziciju ingame