Jump to content
  • 0

Ajutor server


CyborGRO

Question

Salut!

Vreau si eu un sistem de quest, nu quest zilnic, un quest cu objecturi, acele objecturi sa fie o palarie de craciun si sa fie 100 de objecturi in Los Santos 50 si in Las Venturas 50.

 

ANUNT! Caut un owner care este si scripter sa ma ajute la server si sa faca update-urile, si sa imi prezinta si proiectele (doar sisteme nu gamemode).

Succes. pm me (am uitat :)) )

Edited by CyborGRO
Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Te pot ajuta cu sisstemul de quest sper sa intelegi cat de cat-..daca nu, imi zici unde si iti explic.
 

Code:
#define MAX_OBIECTE    15 // Cate obiecte vrei sa adaugi
new ObiecteGasiteTotal[MAX_PLAYERS]; // Totalul obiectelor gasite
new Obiecte[MAX_OBIECTE]; // variabila pentru pickups
new ObiecteGasite[MAX_PLAYERS][MAX_OBIECTE]; // variabila pentru jucatori

OnGameModeInit()
 

Code:
Obiecte[0] = AddStaticPickup(....); // Obiectul 1
Obiecte[1] = AddStaticPickup(....); // Obiectul 2
..............................................................
Obiecte[14] = AddStaticPickup(...); // Obiectul 15

OnPlayerConnect & OnPlayerDisconnect
 

Code:
public OnPlayerConnect(playerid)
{
        for(new j=0;j<MAX_OBIECTE;j++)
        {
	      ObiecteGasite[playerid][j]=0;
        }
        ObiecteGasiteTotal[playerid]=0;
	return 1;
}
// Aici le resetezi deoarece, de exemplu, daca cineva care are 3 obiecte gasite iese, si intra altcineva cu acelasi id, va avea si el 3 obiecte gasite, chit ca are mai multe / mai putine.

public OnPlayerDisconnect(playerid, reason)
{
	for(new j=0;j<MAX_OBIECTE;j++)
        {
	      ObiecteGasite[playerid][j]=0;
        }
        ObiecteGasiteTotal[playerid]=0;
	return 1;
}

Atunci cand un jucator intra intr-un obiect:
 

Code:
public OnPlayerPickUpPickup(playerid, pickupid)
{
	new string[128];
	for(new j=0;j<MAX_OBIECTE;++)
	{
	    if(pickupid == Obiecte[j])
	    {
			if(ObiecteGasite[playerid][j] == 0) // Compari daca jucatorul a mai gasit sau nu obiectul inainte.
  			{
                              ObiecteGasiteTotal[playerid]++;
                              ObiecteGasite[playerid][j]=1;
	        	      DestroyPickup(Obiecte[j]);
                              format(string,sizeof(string)," Felicitari! Ai gasit obiectul nr. {FF0000}%d{FFFFFF}! Acum ai {FF0000}%d / %d {FFFFFF}obiecte!",j,ObiecteGasite[playerid],MAX_OBIECTE);
                              SendClientMessage(playerid,-1,string);
                              if(ObiecteGasiteTotal[playerid] == MAX_OBIECTE) // Aici e premiul cand un jucator atinge maximum de obiecte gasite.
                              {
             		               for(new s=0;s<MAX_OBIECTE;s++)
                                       {
	                  	              ObiecteGasite[playerid][s]=0;
                                       }
                                       ObiecteGasiteTotal[playerid]=0; // Le resetam la 0
                                       // Aici pui ce premiu vrei si mesajul pentru intreg server-ul.
                              }
	    	      }
	    	      else
		      {
				format(string,sizeof(string)," Ai mai gasit obiectul cu nr. {FF0000}%d{FFFFFF}!",j);
				SendClientMessage(playerid,-1,string);
		      }
	    	
		}
	}
	return 1;
}

Si pentru comanda...
 

Code:
COMMAND:obiectegasite(playerid,params)
{
	new string[56];
	format(string,sizeof(string)," Ai {FF0000}%d / %d {FFFFFF}obiecte gasite! Mai ai nevoie de {FF0000}%d {FFFFFF}pentru a obtine premiul!",ObiecteGasiteTotal[playerid],MAX_OBIECTE,MAX_OBIECTE-ObiecteGasiteTotal[playerid]);
	SendClientMessage(playerid,-1,string);
	return 1;
}

In legatura cu salvarea, trebuie sa stiu in ce mod salvezi & citesti datele ( dini, Y_ini, MySQL... )

Edited by View404

Bot developer (Discord): https://discordapp.com/oauth2/authorize?client_id=584989992481193989&scope=bot&permissions=8

Web Developer (Disponibil pentru proiecte noi, experienta de 3 ani in php, mysql si web design)

Scripter SA:MP (Am reinceput sa lucrez in domeniul acesta pentru a sustine comunitatea de samp dupa o pauza de 2 ani)

Link to comment
Share on other sites

  • 0
Acum 1 oră, View404 a spus:

Te pot ajuta cu sisstemul de quest sper sa intelegi cat de cat-..daca nu, imi zici unde si iti explic.
 

Code:

#define MAX_OBIECTE    15 // Cate obiecte vrei sa adaugi
new ObiecteGasiteTotal[MAX_PLAYERS]; // Totalul obiectelor gasite
new Obiecte[MAX_OBIECTE]; // variabila pentru pickups
new ObiecteGasite[MAX_PLAYERS][MAX_OBIECTE]; // variabila pentru jucatori

OnGameModeInit()
 

Code:

Obiecte[0] = AddStaticPickup(....); // Obiectul 1
Obiecte[1] = AddStaticPickup(....); // Obiectul 2
..............................................................
Obiecte[14] = AddStaticPickup(...); // Obiectul 15

OnPlayerConnect & OnPlayerDisconnect
 

Code:

public OnPlayerConnect(playerid)
{
        for(new j=0;j<MAX_OBIECTE;j++)
        {
	      ObiecteGasite[playerid][j]=0;
        }
        ObiecteGasiteTotal[playerid]=0;
	return 1;
}
// Aici le resetezi deoarece, de exemplu, daca cineva care are 3 obiecte gasite iese, si intra altcineva cu acelasi id, va avea si el 3 obiecte gasite, chit ca are mai multe / mai putine.

public OnPlayerDisconnect(playerid, reason)
{
	for(new j=0;j<MAX_OBIECTE;j++)
        {
	      ObiecteGasite[playerid][j]=0;
        }
        ObiecteGasiteTotal[playerid]=0;
	return 1;
}

Atunci cand un jucator intra intr-un obiect:
 

Code:

public OnPlayerPickUpPickup(playerid, pickupid)
{
	new string[128];
	for(new j=0;j<MAX_OBIECTE;++)
	{
	    if(pickupid == Obiecte[j])
	    {
			if(ObiecteGasite[playerid][j] == 0) // Compari daca jucatorul a mai gasit sau nu obiectul inainte.
  			{
                              ObiecteGasiteTotal[playerid]++;
                              ObiecteGasite[playerid][j]=1;
	        	      DestroyPickup(Obiecte[j]);
                              format(string,sizeof(string)," Felicitari! Ai gasit obiectul nr. {FF0000}%d{FFFFFF}! Acum ai {FF0000}%d / %d {FFFFFF}obiecte!",j,ObiecteGasite[playerid],MAX_OBIECTE);
                              SendClientMessage(playerid,-1,string);
                              if(ObiecteGasiteTotal[playerid] == MAX_OBIECTE) // Aici e premiul cand un jucator atinge maximum de obiecte gasite.
                              {
             		               for(new s=0;s<MAX_OBIECTE;s++)
                                       {
	                  	              ObiecteGasite[playerid][s]=0;
                                       }
                                       ObiecteGasiteTotal[playerid]=0; // Le resetam la 0
                                       // Aici pui ce premiu vrei si mesajul pentru intreg server-ul.
                              }
	    	      }
	    	      else
		      {
				format(string,sizeof(string)," Ai mai gasit obiectul cu nr. {FF0000}%d{FFFFFF}!",j);
				SendClientMessage(playerid,-1,string);
		      }
	    	
		}
	}
	return 1;
}

Si pentru comanda...
 

Code:

COMMAND:obiectegasite(playerid,params)
{
	new string[56];
	format(string,sizeof(string)," Ai {FF0000}%d / %d {FFFFFF}obiecte gasite! Mai ai nevoie de {FF0000}%d {FFFFFF}pentru a obtine premiul!",ObiecteGasiteTotal[playerid],MAX_OBIECTE,MAX_OBIECTE-ObiecteGasiteTotal[playerid]);
	SendClientMessage(playerid,-1,string);
	return 1;
}

In legatura cu salvarea, trebuie sa stiu in ce mod salvezi & citesti datele ( dini, Y_ini, MySQL... )

In legatura cu salvarea nu stiu chestii din astea cu MySQL, daca vrei sa ma ajuti si PM me

 

Edited by CyborGRO
Link to comment
Share on other sites

  • 0

Da-mi sa vad erorile

 

Bot developer (Discord): https://discordapp.com/oauth2/authorize?client_id=584989992481193989&scope=bot&permissions=8

Web Developer (Disponibil pentru proiecte noi, experienta de 3 ani in php, mysql si web design)

Scripter SA:MP (Am reinceput sa lucrez in domeniul acesta pentru a sustine comunitatea de samp dupa o pauza de 2 ani)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.