Jump to content

Mister

Recommended Posts

Sa incepem:

  1. Nici macar la OnDialogResponse nu ai pus un switch pentru o viteza mai mare de raspuns ( este recomandat chiar si in pagina de wiki sa-mp). https://wiki.sa-mp.com/wiki/OnDialogResponse
  2. Nu ai switch la listitem din dialoguri deci la fel de prost.
  3. Ai bagat if(gLogged[playerid] != 1) return SendClientMessage(playerid,COLOR_RED,"Nu esti logat"); la fiecare comanda cand puteai foarte simplu sa foloseti codul o singura data in: OnPlayerCommandReceived dar nah csf, n-ai csf.
  4. Ai 297 de SetTimerEx in tot GM-ul deci optimizare se dovedeste a fi in floare.
  5. Pe partea de MySQL folosesti: cache_get_field_content(x,"PosZ", temp); HouseInfo[x][hPosZ] = floatstr(temp); si am o veste buna pentru tine :O S-a inventat si cache_get_field_content_float
  6. Surprinzator nici in SetPlayerToTeamColor(playerid) nu s-a auzit de switch mai ales la o functie utilizata des in spawn.
  7. Ai declarat un new strings[388]; global se pare si il folosesti in tot GM-ul dar nu ti-a auzit mintea de un strings[ 0 ] = EOS; ( (E)nd (O)f (S)tring ca sa nu te obosesti sa cauti ).
  8. M-am amuzat sa aflu ca SirFulgerica a facut un Live si la ~100 de jucatori s-a dus naibii serverul si avea undeva la 1-2k query/secunda (din declaratiile lui).
  9. Sute de linii de cod pentru un sistem de Paintball carea poate fi facut foarte simplu si-am sa-ti dau o mica lectie :* (P.S. Functia de mai jos ruleaza cele 4 tipuri de minigame in acelasi timp :O
  10. Am asteptat momentul sa-ti gasesc o creatie fabuloasa ca sa am un contra-argument la "stock-ul e mai bun" si la R40 cu un simplu CTRL+H. Poti in continuare sa te revolti sau sa faci ce vrei dar pentru mine si poate si pentru cei care au inteles ce-am scris mai sus esti un scripter ce tinde spre -infinit ca valoarea, pace!
function PaintBallTimer( )
{
    for( new paintID=0; paintID < MAX_PAINT; paintID++ )
    {
        if( paintballVariables[ paintID ][ paintTimer ] != 0 )
        {
        	paintballVariables[ paintID ][ paintTimer ]--;
        }
		if( paintballVariables[ paintID ][ paintStatus ] == 0 && paintballVariables[ paintID ][ paintTimer ] == 0 )
        {
            if( paintballVariables[ paintID ][ paintPlayers ] >= 3 )
            {
                foreach( Player, i )
                {
                	if( playerVariables[ i ][ pPaintBall ] == paintID )
                	{
		                ResetServerWeapons( i );
	             		playerVariables[ i ][ pPaintBallVotedMap ] = false;
					    playerVariables[ i ][ pPaintBallVotedWeapon ] = false;
					    playerVariables[ i ][ pPaintBallKills ] = 0;
					    playerVariables[ i ][ pPaintBallDeaths ] = 0;
			            playerVariables[ i ][ pPaintBallLevel ] = 0;
		        	}
                }
                ResetArenaVotes( paintID );
	            paintballVariables[ paintID ][ paintStatus ] = 1;
	            paintballVariables[ paintID ][ paintTimer ] = 30;
			}
			else
			{
			    paintballVariables[ paintID ][ paintStatus ] = 0;
	            paintballVariables[ paintID ][ paintTimer ] = 0;
			}
        }
        else if( paintballVariables[ paintID ][ paintStatus ] == 1 && paintballVariables[ paintID ][ paintTimer ] == 0 )
        {
        	if( paintballVariables[ paintID ][ paintPlayers ] >= 3 )
        	{
        	    SelectVotedArena( paintID );

        	    if( paintID == 0 )
        	        paintballVariables[ paintID ][ paintWeaponSet ] = GetVoteScoreWeapon( paintID );

        	    paintballVariables[ paintID ][ paintStatus ] = 2;
	            paintballVariables[ paintID ][ paintTimer ] = 300; // 300 pentru normal - 2 minute pentru teste

        	    foreach( Player, i )
                {
                	if( playerVariables[ i ][ pPaintBall ] == paintID )
                	{
					    SetPlayerArenaPosition( i );
					    SetPlayerHealthEx( i, 100 );
					    SetPlayerArmourEx( i, 0.0 );
					    GivePlayerWeaponPack( i, paintID );
	            	}
	            }
            }
            else
            {
                paintballVariables[ paintID ][ paintStatus ] = 0;
	            paintballVariables[ paintID ][ paintTimer ] = 0;
            }
        }
        else if( paintballVariables[ paintID ][ paintStatus ] == 2 && paintballVariables[ paintID ][ paintTimer ] == 0 )
		{
			if( paintballVariables[ paintID ][ paintPlayers ] >= 2 )
			{
			    new winnerID = CalculatePaintballWinner( paintID );
			    foreach( Player, i )
                {
                	if( playerVariables[ i ][ pPaintBall ] == paintID )
                	{
                		// ( Insert Paintball logs )
						gsQuery[ 0 ] = EOS;
						mysql_format( g_Handle, gsQuery, sizeof gsQuery, "INSERT INTO `server_paintball`(`paintPlayer`, `paintKills`, `paintDeaths`) VALUES ('%s', %d, %d)", 
							playerVariables[ winnerID ][ pNormalName ], playerVariables[ winnerID ][ pPaintBallKills ], playerVariables[ winnerID ][ pPaintBallDeaths ] );
					    mysql_tquery( g_Handle, gsQuery );

					    FormatMSG( i, COLOR_YELLOW, "Round over! Winner: %s - %d kills.", PlayerName( winnerID ), playerVariables[ winnerID ][ pPaintBallKills ] );
					    SendClientMessage( i, COLOR_YELLOW, "Use /votegun to vote for a gun. Use /votemap to vote for a map." );

					    ResetServerWeapons( i );
			     		playerVariables[ i ][ pPaintBallVotedMap ] = false;
					    playerVariables[ i ][ pPaintBallVotedWeapon ] = false;
					    playerVariables[ i ][ pPaintBallKills ] = 0;
					    playerVariables[ i ][ pPaintBallDeaths ] = 0;
					    playerVariables[ i ][ pPaintBallLevel ] = 0;
					}
				}
				ResetArenaVotes( paintID );
				paintballVariables[ paintID ][ paintStatus ] = 1;
				paintballVariables[ paintID ][ paintTimer ] = 30;
			}
			else
			{
			    paintballVariables[ paintID ][ paintStatus ] = 0;
	            paintballVariables[ paintID ][ paintTimer ] = 0;
			}
        }
        // ( Update the Texts )
        switch( paintballVariables[ paintID ][ paintStatus ] )
        {
	        case 0: // waiting for players
			{
				foreach( Player, i )
						if( playerVariables[ i ][ pPaintBall ] == paintID )
							Announce( i, "~n~~n~~y~~h~NOT ENOUGH PLAYERS TO START...", 2000, 3 );

				paintballVariables[ paintID ][ paintString ][ 0 ] = EOS;
				format( paintballVariables[ paintID ][ paintString ], 128, "~g~WAITING FOR MORE PLAYERS TO JOIN...", TimeConvert( paintballVariables[ paintID ][ paintTimer ] ) );
			}
			case 1: // vote map/gun
			{
			    if( paintballVariables[ paintID ][ paintTimer ] <=5 )
				{
					paintballVariables[ paintID ][ paintString ][ 0 ] = EOS;
					format( paintballVariables[ paintID ][ paintString ], 128, "~w~~h~PAINTBALL STARTING IN~n~~r~%d ~w~~h~SECONDS", paintballVariables[ paintID ][ paintTimer ] );
					foreach( Player, i )
						if( playerVariables[ i ][ pPaintBall ] == paintID )
							Announce( i, paintballVariables[ paintID ][ paintString ], 2000, 4 );
				}
			    paintballVariables[ paintID ][ paintString ][ 0 ] = EOS;
				format( paintballVariables[ paintID ][ paintString ], 128, "PAINTBALL ROUND STARTS IN: ~y~~h~%s", TimeConvert( paintballVariables[ paintID ][ paintTimer ] ) );
			}
			case 2: // play
			{
			    if( paintballVariables[ paintID ][ paintPlayers ] < 2 )
			    {
			    	foreach( Player, i )
						if( playerVariables[ i ][ pPaintBall ] == paintID )
			        		ResetServerWeapons( i );

    				paintballVariables[ paintID ][ paintStatus ] = 0;
	            	paintballVariables[ paintID ][ paintTimer ] = 0;
			    }
			    paintballVariables[ paintID ][ paintString ][ 0 ] = EOS;
				format( paintballVariables[ paintID ][ paintString ], 128, "PAINTBALL ROUND ENDS IN: ~b~%s", TimeConvert( paintballVariables[ paintID ][ paintTimer ] ) );
			}
		}
		UpdatePaintTextDraws( paintID );
	}
}

 

Sinner.png

Link to comment
Share on other sites

18 hours ago, SirFulgeruL said:

Frumos gamemode , mi-a placut mult /iphone si castile incat le-am imprumutat si eu :D .

Multumim, ai grija la buguri si greselile gramaticale

 

1 hour ago, SoNNy.sys said:

Sa incepem:

  1. Nici macar la OnDialogResponse nu ai pus un switch pentru o viteza mai mare de raspuns ( este recomandat chiar si in pagina de wiki sa-mp). https://wiki.sa-mp.com/wiki/OnDialogResponse
  2. Nu ai switch la listitem din dialoguri deci la fel de prost.
  3. Ai bagat if(gLogged[playerid] != 1) return SendClientMessage(playerid,COLOR_RED,"Nu esti logat"); la fiecare comanda cand puteai foarte simplu sa foloseti codul o singura data in: OnPlayerCommandReceived dar nah csf, n-ai csf.
  4. Ai 297 de SetTimerEx in tot GM-ul deci optimizare se dovedeste a fi in floare.
  5. Pe partea de MySQL folosesti: cache_get_field_content(x,"PosZ", temp); HouseInfo[x][hPosZ] = floatstr(temp); si am o veste buna pentru tine :O S-a inventat si cache_get_field_content_float
  6. Surprinzator nici in SetPlayerToTeamColor(playerid) nu s-a auzit de switch mai ales la o functie utilizata des in spawn.
  7. Ai declarat un new strings[388]; global se pare si il folosesti in tot GM-ul dar nu ti-a auzit mintea de un strings[ 0 ] = EOS; ( (E)nd (O)f (S)tring ca sa nu te obosesti sa cauti ).
  8. M-am amuzat sa aflu ca SirFulgerica a facut un Live si la ~100 de jucatori s-a dus naibii serverul si avea undeva la 1-2k query/secunda (din declaratiile lui).
  9. Sute de linii de cod pentru un sistem de Paintball carea poate fi facut foarte simplu si-am sa-ti dau o mica lectie :* (P.S. Functia de mai jos ruleaza cele 4 tipuri de minigame in acelasi timp :O
  10. Am asteptat momentul sa-ti gasesc o creatie fabuloasa ca sa am un contra-argument la "stock-ul e mai bun" si la R40 cu un simplu CTRL+H. Poti in continuare sa te revolti sau sa faci ce vrei dar pentru mine si poate si pentru cei care au inteles ce-am scris mai sus esti un scripter ce tinde spre -infinit ca valoarea, pace!

Ba tu du-te in plm de aici cu reprosurile tale de smecher :))

Gmul l-am postat acum 1 an cred(poate mai putin poate mai mult),  eu l-am creat cu 3-4 ani inainte sa il postez(logic)

nici acum 1 an nu cred ca erau tutoriale de optimizare sau chestii de genul, dar acum 3-4 ani, lasand asta la o parte chiar daca erau eu nu stiam de ele si nici nu aveam cunostiinte atat de mari pentru ele acum 3-4 ani, sau nu intelegeam de ce sa fie aplicate tutorialele,

Gmul e facut sa fie frumos pentru playeri si ca mod de joc, nu frumos ca si cod, eu am avut un server cu 50 de sloturi si mi-a functionat perfect, cine vrea sa ii mearga mai bine la cate sloturi vrea el sa si-l faca eu am pus baza in acest gm pe creativitate nu pe exactitatea in script, iar in momentul in care l-am facut recunosc ca nu eram atat de evoluat in scripting.

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

 @SoNNy.sys tu esti ca aia care il criticau pe Eminescu adica un prost,un gm e facut de cineva si lui daca ii merge perfect e totul bine ce rahat ne-ar interesa ca a picat serverul la 100 de playeri poate era de la host.Poate ai dreptate(nu ma pricep la script aproape deloc) dar nu ai dreptul sa il critici pentru ca are x si nu are y adica poate e mai lent cu 0.1 secunde sau are lag, dar e facut sa se simta lumea bine.E ca o masina daca vrei sa aiba CP si un motor mare nu te astepta sa-ti consume sub 5%,in concluzie noi am creat un Supercar nu o dacie logan.

Edited by Sealand123
Link to comment
Share on other sites

On 9/8/2016 at 5:45 PM, Mister said:

Multumim, ai grija la buguri si greselile gramaticale

 

Ba tu du-te in plm de aici cu reprosurile tale de smecher :))

Gmul l-am postat acum 1 an cred(poate mai putin poate mai mult),  eu l-am creat cu 3-4 ani inainte sa il postez(logic)

nici acum 1 an nu cred ca erau tutoriale de optimizare sau chestii de genul, dar acum 3-4 ani, lasand asta la o parte chiar daca erau eu nu stiam de ele si nici nu aveam cunostiinte atat de mari pentru ele acum 3-4 ani, sau nu intelegeam de ce sa fie aplicate tutorialele,

Gmul e facut sa fie frumos pentru playeri si ca mod de joc, nu frumos ca si cod, eu am avut un server cu 50 de sloturi si mi-a functionat perfect, cine vrea sa ii mearga mai bine la cate sloturi vrea el sa si-l faca eu am pus baza in acest gm pe creativitate nu pe exactitatea in script, iar in momentul in care l-am facut recunosc ca nu eram atat de evoluat in scripting.

Gamemode-ul la care se refera el era un BigZone de pe net , nu era briston .

Poate ca nu este cel mai optimizat gamemode dar daca muncesti putin la el poate sa fie ceva nou ce in romania pana acum nu sa vazut .

Edited by SirFulgeruL
Link to comment
Share on other sites

23 minutes ago, SirFulgeruL said:

Gamemode-ul la care se refera el era un BigZone de pe net , nu era briston .

Poate ca nu este cel mai optimizat gamemode dar daca muncesti putin la el poate sa fie ceva nou ce in romania pana acum nu sa vazut .

Multumesc, si da ai dreptate nu este cel mai optimizat dar daca muncesti  unpic la el chiar va fi ceva unic si bun.

Cum sa compari gmul meu cu o japiță de bugged de pe net. A spus toate neregulile gmul de capul lui :))

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

13 hours ago, Danielowski said:

Foarte frumos, felicitari pentru munca depusa. Insa este o problema: nu mai merge linkul de la panel.

Poti face un update la link te rog frumos ?

Incearca ca acum am facut update

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

7 hours ago, MAXYMUSS said:

Gm are anumite chesti din reaven rp ? 

Primul gm fiind un edit al raven role play, iar acesta fiind a 3 lea gm refacut de la 0 mai sunt si chestii imprumutate din el dar rescrise.

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

4 hours ago, Mister said:

Primul gm fiind un edit al raven role play, iar acesta fiind a 3 lea gm refacut de la 0 mai sunt si chestii imprumutate din el dar rescrise.

Rescrise se vede clar ca sunt , si primul meu edit a fost raven oricum gm e frumos singuru gm din zilele noaste care e facut de la 0 .. ca altele nu am vazut 

Edited by MAXYMUSS
Link to comment
Share on other sites

1 hour ago, MAXYMUSS said:

Rescrise se vede clar ca sunt , si primul meu edit a fost raven oricum gm e frumos singuru gm din zilele noaste care e facut de la 0 .. ca altele nu am vazut 

Multumesc, ravenul a fost si primul meu gm, a fost genial si inca e, dar a trebuit sa trec la altul. Iar apoi sa fac unul de la 0 pentru ca, cu timpul am observat multe functii si chestii care nu isi aveau rolul si ingreunau serverul

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

  • 2 weeks later...
19 hours ago, iulianMP said:

eu ori ce GM downloadez de aici imi nu pot sa il pornesc adica imi arata ca se conecteaza dar nu-mi da login si alea! ce fac!! ajutor!

Trebuie sa postezi la categoria suport servere sau ajutor scripting depinde de unde e problema de cod sau de programe. 

Ori datele mysql sunt gresite ori nu ai toate programele instalate in pc

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

  • 1 month later...
  • 2 weeks later...

Join the conversation

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

Guest
Reply to this topic...

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