Jump to content

Question

Posted

Salut..Am facut un nou sistem.Un sistem de duel..in fine..am o mica problema cu el...am facut comanda tot..accept-ul..dar ii da tp doar celui care scrie /accept duel si celui care a dat /duel OmuNegru nu ii da tp..Si asta este cam nasol..

1)Cum as putea sa fac atunci cand scriu /accept duel OmuNegru sa ii dea tp ambiilor playeri..

2)Cum as putea sa fac.....Deci daca cineva e deja in virtualworld 0 sa ii bage pe cei care au scris acum in virtualworld 1 daca virtualworld 1 e ocupat de 2 playeri..sa ii bage pe urmatorii 2 in virtual world 3 si tot asa.. Nu am idee cum as putea face treaba asta..

Pastebin:http://pastebin.com/WTWP0VxH

As fi super recunoscator celui care mi-ar da o mana de ajutor.Multumesc Frumos.

14 answers to this question

Recommended Posts

  • 0
Posted

La accept duel adauga asa, inlocuiesti defapt cu ce e mai jos, nu uita sa setezi vw 0 la finalul duelului

  1. GetPlayerName(playerid, giveplayer, sizeof(giveplayer));
  2.                 SCM(playerid,COLOR_WHITE,"Te-ai teleportat cu succes in locul pentru duel.");
  3.                 SetPlayerPos(playerid, 1412.1854,2.6663,1000.9237);
  4.                 SetPlayerInterior(playerid, 1);
  5. SetPlayerPos(giveplayer 1412.1854,2.6663,1000.9237);
  6.                 SetPlayerInterior(giveplayer, 1);
  7. SetayerVirtualWorld (playerid,playerid+10);
  8. SetayerVirtualWorld  (giveplayer,playerid+10);
  9.                 return 1;
  10.              
  11.   return 1;
  12.  

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
  • 0
  • Administrator
Posted

1. Ca sa il teleportezi si pe cel care da duelul trebuie sa ti minte jucatorul care face asta, poti sa schimbi comanda /accept duel in /accept duel <Id> sau sa ii setezi o variabila jucatorului care trebuie sa accepte cu id-ul jucatorului care a dat duelul sau sa setezi o variabila pe jucatorul care a dat duelul cu jucatorul care trebuie sa accepte si dupa sa treci prin toti jucatorii si sa vezi care e cel bun (nu prea e buna varianta asta).

2. Poti sa faci un vector de 2.147.483.647, dar e cam mare si ocupa multa memorie, alta solutie e sa setezi virtual world-ul cu id-ul unuia dintre jucatori + 1, de exemplu eu am id 0 si tu ai id 10, poti sa setezi virtual world-ul la id-ul meu + 1 sau la id-ul tau + 1 (adica virtual world-ul 1 sau 11). Asa o sa fi sigur ca acel virtual world nu e ocupat, din moment ce un jucator nu poate avea id-ul altuia si nu poate sa fie in doua dueluri in acelasi timp.

 

  • 0
Posted
Acum 5 ore, WopsS a spus:

alta solutie e sa setezi virtual world-ul cu id-ul unuia dintre jucatori + 1, de exemplu eu am id 0 si tu ai id 10, poti sa setezi virtual world-ul la id-ul meu + 1 sau la id-ul tau + 1 (adica virtual world-ul 1 sau 11). Asa o sa fi sigur ca acel virtual world nu e ocupat, din moment ce un jucator nu poate avea id-ul altuia si nu poate sa fie in doua dueluri in acelasi timp.

Dar ai putea sa imi explici cum as putea sa fac?? ceva mai explicit te rog eu frumos.

  • 0
Posted
Acum 5 ore, WopsS a spus:

1. Ca sa il teleportezi si pe cel care da duelul trebuie sa ti minte jucatorul care face asta, poti sa schimbi comanda /accept duel in /accept duel <Id> sau sa ii setezi o variabila jucatorului care trebuie sa accepte cu id-ul jucatorului care a dat duelul sau sa setezi o variabila pe jucatorul care a dat duelul cu jucatorul care trebuie sa accepte si dupa sa treci prin toti jucatorii si sa vezi care e cel bun (nu prea e buna varianta asta).

Frate eu cand scriu /accept duel.. defapt scriu /accept duel ID... ca daca scriu doar accept duel nu imi merge comanda..

  • 0
Posted
Acum 5 ore, Mister a spus:

La accept duel adauga asa, inlocuiesti defapt cu ce e mai jos, nu uita sa setezi vw 0 la finalul duelului

Frate am pus da vad ca imi da erori..ce sa fac?

Untitled.png

  • 0
Posted
Acum 3 minute, OmuNegru a spus:

Frate am pus da vad ca imi da erori..ce sa fac?

Untitled.png

cauti pe google translate cum se numeste eroarea respectiva si vezi ce inseamna eroarea aia sau ce denumire are si iti vei da seama.

FiveGame  Lands

Pawno Developer, Mapping , Scripter

Since 2016

  • 0
  • Administrator
Posted
10 minutes ago, OmuNegru said:

Frate eu cand scriu /accept duel.. defapt scriu /accept duel ID... ca daca scriu doar accept duel nu imi merge comanda..

Atunci foloseste-te de acel id.

14 minutes ago, OmuNegru said:

Dar ai putea sa imi explici cum as putea sa fac?? ceva mai explicit te rog eu frumos.

Cum a facut @Mister doar ca in loc de + 10 pui + 1.

  • 0
Posted

Scriptul meu este corect asa cum l-ai pus doar ca nu am pus o virgula acolo unde iti da eroare special ca sa citesti si tu codul sa vad ca nu dai copy paste, ai pus mouseul acolo dar nu ai vazut ca e virgula lipsa dupa giveplayer.

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
  • 0
Posted
Acum 16 ore, Geani a spus:

cauti pe google translate cum se numeste eroarea respectiva si vezi ce inseamna eroarea aia sau ce denumire are si iti vei da seama.

 

Acum 6 ore, Mister a spus:

Scriptul meu este corect asa cum l-ai pus doar ca nu am pus o virgula acolo unde iti da eroare special ca sa citesti si tu codul sa vad ca nu dai copy paste, ai pus mouseul acolo dar nu ai vazut ca e virgula lipsa dupa giveplayer.

Am facut aia cu , dar uite ca la asta  nu am idee ce ar trebui sa ii fac...

  • 0
Posted
6 minutes ago, OmuNegru said:

 

Am facut aia cu , dar uite ca la asta  nu am idee ce ar trebui sa ii fac...

ai pus 

  1. SetPlayerPos(giveplayer, 1412.1854,2.6663,1000.9237);
 
si tot asa iti face?

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
  • 0
Posted
new invitat_duel[MAX_PLAYERS];
pune la OnPlayerConnect si la OnPlayerDisconnect asta: invitat_duel[playerid] = -1;
CMD:duel(playerid, params[])
{
    if(LogatPin[playerid] == 0) return SCM(playerid, -1, "Contul tau este {ff0000}blocat{ffffff}, foloseste {ff0000}/pin{ffffff} pentru a-l debloca");
	if(gPlayerLogged[playerid] == 0) return SendClientMessage(playerid, COLOR_LIGHTRED, "You need to login first.");
	if(!IsPlayerInRangeOfPoint(playerid,10.0,312.8029,-131.7714,999.6083)) return SCM(playerid,COLOR_WHITE,"Poti folosi aceasta comanda doar in Gun Shop.");
    if(IsPlayerConnected(playerid))
    {
		new id,sendername[25],string[184];
		if(sscanf(params, "d",id)) return SCM(playerid,COLOR_WHITE,"{00FFFF}Syntax: {ffffff}/duel <Name/Playerid>");
		if(id == INVALID_PLAYER_ID) return SCM(playerid, COLOR_WHITE, "{FFFFCC}Error: Acest player nu este conectat.");
		if(IsPlayerConnected(id))
		{
		    if(id == playerid) return SendClientMessage(playerid, COLOR_WHITE, "Nu te poti invita singur sa faci duel.");
			if(ProxDetectorS(10.0, playerid, id))
			{
				GetPlayerName(playerid, sendername, sizeof(sendername));
				SendClientMessage(playerid, COLOR_WHITE, "Cerere de duel trimisa.");
				format(string, sizeof(string), "%s te-a invitat sa faci 1 vs 1 cu el.Scrie /accept duel %d pentru a accepta.",sendername,playerid);
				SendClientMessage(id, COLOR_WHITE, string);
				invitat_duel[id] = playerid;
			}
			else return SendClientMessage(playerid, COLOR_WHITE, "{FFB870}Player is not near you.");
		}
    }
	return 1;
}
else if(strcmp(x_job,"duel",true) == 0)
{
	if(!IsPlayerConnected(invitat_duel[playerid])) return SendClientMessage(playerid, -1, "Nu ai fost invitat la un duel!");
	new id = invitat_duel[playerid];
	SCM(playerid,COLOR_WHITE,"Te-ai teleportat cu succes in locul pentru duel.");
	SetPlayerPos(playerid, 1412.1854,2.6663,1000.9237);SetPlayerPos(id, 1412.1854,2.6663,1000.9237);
	SetPlayerInterior(playerid, 1);SetPlayerInterior(id, 1);
	return 1;
}

+1?

                        

 

 

  • 0
Posted
La 13.01.2017 la 22:16, OmuNegru a spus:

da

ti-am dat eu tot, si nu are cum sa nu mearga, l-ai incercat cel putin?

  • Upvote 1

                        

 

 

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.