Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4950 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki, gal galit kas įdėti kokia pamoka kaip pasidaryti, kad algos butu gaunamos iš direktorių su komanda pvz. /moku [nick]? Galit ir dėti gamemodą kuriame yra toks dalykas. Nedomina kur nueini i savivaldybe ar kur ten ir pasiemi :D Pats bandžiau daryti bet nuėjus į serverį rašo Unknown Command ar kaip ten ir niekas man neišėjo. ;/ Pagalbos plz. Atsidėkočiau su daug +rep :)

(redaguota)

1 Punktas.

Nueinate į bet kokį serverį, susirandate jums tinkamą vietą, kurioje galėsite atsiimti savo algas. Nuėję į tą vietą rašote /save auto-algos. //Sukūrėte Algų išmokėjimo pickup'ą.

2 Punktas.

Keliaujate į savo serverio aplanką/gamemodes/data/pickups.txt.

Po:

Kodas: Pasirinkti visus

enum pdata{

Rašote:

Kodas: Pasirinkti visus

autoalga,

Ir žemiau, prie visų pickup'ų:

Kodas: Pasirinkti visus

pickups[0][autoalga] = CreatePickupA(1274,2,X,Y,Z); //

** Vietoje "X,Y,Z" įrašote savo pickup'o X,Y,Z koordinates, kurias išgavote pirmame punkte.

** Jas rasti galite: My Documents/Gta San Andreas User Files/SAMP/savedpositions.txt.

Pvz.: aš gavau štai tokias koordinates:

Kodas: Pasirinkti visus

AddPlayerClass(16,358.7519,168.9839,1008.3828,82.9652,0,0,0,0,0,0); // Autoalgos

Iš šitos eilutės reiks tik šios vietos:

AddPlayerClass(16,358.7519,168.9839,1008.3828,82.9652,0,0,0,0,0,0); // Autoalgos.

3 Punktas.

Einate į savo serverio aplanką/gamemodes/data/playerDB.txt.

Po visais "bool:"

Rašote:

Kodas: Pasirinkti visus

alga,

.

Išsaugote ir įjungiate savo GameMode ir susirandate:

Kodas: Pasirinkti visus

public Clear(playerid)

{

Po:

Kodas: Pasirinkti visus

playerDB[playerid][banke]=0;

Dedate:

Kodas: Pasirinkti visus

playerDB[playerid][alga]=0;

Susirandate:

Kodas: Pasirinkti visus

public LoadPlayerData(playerid)

{

Po:

Kodas: Pasirinkti visus

playerDB[playerid][banke] = dini_Int(file,"Money.Bank");

Dedate:

Kodas: Pasirinkti visus

playerDB[playerid][alga] = dini_Int(file,"Alga");

Susirandate:

Kodas: Pasirinkti visus

public SavePlayerData(playerid,bool:simple)

{

Po:

Kodas: Pasirinkti visus

dini_IntSet(file,"Money.Bank",playerDB[playerid][banke]);

Dedate:

Kodas: Pasirinkti visus

dini_IntSet(file,"Alga",playerDB[playerid][alga]);

4 Punktas.

Dabar paieškoje (CTRL+F) susirandate vietą, kurioje už važinėjimą tarnybiniu transportu gaunate pinigus į pelną. Paieškoje suveskite:

Kodas: Pasirinkti visus

((model

Ir tada turite rasti kažką panašaus į tai:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=21;

Na taip atrodo mano eilutė. Čia, už važinėjimą PD transportu, į pelną žaidėjas įneša pinigų. Dabar padarysime, kad už važinėjimą eitų eitų ir į "Algas".

Po šia eilutę, dedate:

Kodas: Pasirinkti visus

else if(model == 596 || model== 497 || model== 598 || model== 523) playerDB[playerid][alga]+=50;//Vietoj '50' įrašykite savo sumą.

Turėjote gauti taip:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=21;

else if(model == 596 || model== 497 || model== 598 || model== 523) playerDB[playerid][alga]+=50;//Vietoj '50' įrašykite savo sumą.

* Štai ir padarėme, kad už važinėjimą policijos transportu įnešite 21LT į pelną ir dar 50LT sau į algas. Jeigu nenorite, kad duotų pinigų į pelną, galite ištrinti pirmą eilutę arba pakeisti ją į tokią:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=0;

5 Punktas.

Sukursim komandą, kuri rodys kiek žaidėjas jau yra uždirbęs.

Kodas: Pasirinkti visus

if(!strcmp(cmdtext, "/uzdirbau", true))

{

new msg[128];

format(msg,sizeof(msg),"Jus esate uzdirbes: %i LT",playerDB[playerid][algos]);

ShowPlayerDialog(playerid,DIALOGOID, DIALOG_STYLE_MSGBOX,"Alga",msg, "Gerai","");

SendClientMessage(playerid,COLOR,"* Atsiimti savo uzdirbta alga galite prezidenturoje!");

return 1;

}

Vietoje "DIALOGOID" būtinai pasikeiskite į savo norimą ID!!! (PVZ: 14).

6 Punktas.

Aktyvuosim pickup'ą, kad užlipus ant jo, jis atliktų tam tikrą funkciją.

Po:

Kodas: Pasirinkti visus

public OnPlayerPickUpPickup(playerid, pickupid)

{

Rašote:

Kodas: Pasirinkti visus

if(pickupid == pickups[0][autoalga])

{

ShowPlayerDialog(playerid,DIALOGOID,DIALOG_STYLE_MSGBOX,"Algos","Cia galite atsiimti savo uzdirbta alga.\nKiek esate uzdirbes, galite pasiziureti parase /uzdirbau\nJeigu norite pasiimti alga, spauskite \"Alga\"","Alga","Atsaukti");

return 1;

}

* Vietoje "DIALOGOID" įrašykite savo norimą ID!!! (PVZ:15)

Dabar reikia aktyvuoti "Dialog'ą". Po:

Kodas: Pasirinkti visus

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

{

Dedate:

Kodas: Pasirinkti visus

if(dialogid == DIALOGOID){

if(response){

new msg[128];

format(msg,sizeof(msg),"Atsiemete savo uzdirbta alga: %i LT",playerDB[playerid][alga]);

SendClientMessage(playerid,COLOR,msg);

GivePlayerMoneyA(playerid,playerDB[playerid][alga]);

playerDB[playerid][alga]=0;

return 1;

}

if(!response)

{

SendClientMessage(playerid,COLOR,"Sekmes :)");

return 1;}

}

Redaguota , nario Domas™The...
560x95.png

1 Punktas.

Nueinate į bet kokį serverį, susirandate jums tinkamą vietą, kurioje galėsite atsiimti savo algas. Nuėję į tą vietą rašote /save auto-algos. //Sukūrėte Algų išmokėjimo pickup'ą.

2 Punktas.

Keliaujate į savo serverio aplanką/gamemodes/data/pickups.txt.

Po:

Kodas: Pasirinkti visus

enum pdata{

Rašote:

Kodas: Pasirinkti visus

autoalga,

Ir žemiau, prie visų pickup'ų:

Kodas: Pasirinkti visus

pickups[0][autoalga] = CreatePickupA(1274,2,X,Y,Z); //

** Vietoje "X,Y,Z" įrašote savo pickup'o X,Y,Z koordinates, kurias išgavote pirmame punkte.

** Jas rasti galite: My Documents/Gta San Andreas User Files/SAMP/savedpositions.txt.

Pvz.: aš gavau štai tokias koordinates:

Kodas: Pasirinkti visus

AddPlayerClass(16,358.7519,168.9839,1008.3828,82.9652,0,0,0,0,0,0); // Autoalgos

Iš šitos eilutės reiks tik šios vietos:

AddPlayerClass(16,358.7519,168.9839,1008.3828,82.9652,0,0,0,0,0,0); // Autoalgos.

3 Punktas.

Einate į savo serverio aplanką/gamemodes/data/playerDB.txt.

Po visais "bool:"

Rašote:

Kodas: Pasirinkti visus

alga,

.

Išsaugote ir įjungiate savo GameMode ir susirandate:

Kodas: Pasirinkti visus

public Clear(playerid)

{

Po:

Kodas: Pasirinkti visus

playerDB[playerid][banke]=0;

Dedate:

Kodas: Pasirinkti visus

playerDB[playerid][alga]=0;

Susirandate:

Kodas: Pasirinkti visus

public LoadPlayerData(playerid)

{

Po:

Kodas: Pasirinkti visus

playerDB[playerid][banke] = dini_Int(file,"Money.Bank");

Dedate:

Kodas: Pasirinkti visus

playerDB[playerid][alga] = dini_Int(file,"Alga");

Susirandate:

Kodas: Pasirinkti visus

public SavePlayerData(playerid,bool:simple)

{

Po:

Kodas: Pasirinkti visus

dini_IntSet(file,"Money.Bank",playerDB[playerid][banke]);

Dedate:

Kodas: Pasirinkti visus

dini_IntSet(file,"Alga",playerDB[playerid][alga]);

4 Punktas.

Dabar paieškoje (CTRL+F) susirandate vietą, kurioje už važinėjimą tarnybiniu transportu gaunate pinigus į pelną. Paieškoje suveskite:

Kodas: Pasirinkti visus

((model

Ir tada turite rasti kažką panašaus į tai:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=21;

Na taip atrodo mano eilutė. Čia, už važinėjimą PD transportu, į pelną žaidėjas įneša pinigų. Dabar padarysime, kad už važinėjimą eitų eitų ir į "Algas".

Po šia eilutę, dedate:

Kodas: Pasirinkti visus

else if(model == 596 || model== 497 || model== 598 || model== 523) playerDB[playerid][alga]+=50;//Vietoj '50' įrašykite savo sumą.

Turėjote gauti taip:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=21;

else if(model == 596 || model== 497 || model== 598 || model== 523) playerDB[playerid][alga]+=50;//Vietoj '50' įrašykite savo sumą.

* Štai ir padarėme, kad už važinėjimą policijos transportu įnešite 21LT į pelną ir dar 50LT sau į algas. Jeigu nenorite, kad duotų pinigų į pelną, galite ištrinti pirmą eilutę arba pakeisti ją į tokią:

Kodas: Pasirinkti visus

if((model == 596 || model== 497 || model== 598 || model== 523) && playerDB[playerid][specialybe] == 1) pelnas[0]+=0;

5 Punktas.

Sukursim komandą, kuri rodys kiek žaidėjas jau yra uždirbęs.

Kodas: Pasirinkti visus

if(!strcmp(cmdtext, "/uzdirbau", true))

{

new msg[128];

format(msg,sizeof(msg),"Jus esate uzdirbes: %i LT",playerDB[playerid][algos]);

ShowPlayerDialog(playerid,DIALOGOID, DIALOG_STYLE_MSGBOX,"Alga",msg, "Gerai","");

SendClientMessage(playerid,COLOR,"* Atsiimti savo uzdirbta alga galite prezidenturoje!");

return 1;

}

Vietoje "DIALOGOID" būtinai pasikeiskite į savo norimą ID!!! (PVZ: 14).

6 Punktas.

Aktyvuosim pickup'ą, kad užlipus ant jo, jis atliktų tam tikrą funkciją.

Po:

Kodas: Pasirinkti visus

public OnPlayerPickUpPickup(playerid, pickupid)

{

Rašote:

Kodas: Pasirinkti visus

if(pickupid == pickups[0][autoalga])

{

ShowPlayerDialog(playerid,DIALOGOID,DIALOG_STYLE_MSGBOX,"Algos","Cia galite atsiimti savo uzdirbta alga.\nKiek esate uzdirbes, galite pasiziureti parase /uzdirbau\nJeigu norite pasiimti alga, spauskite \"Alga\"","Alga","Atsaukti");

return 1;

}

* Vietoje "DIALOGOID" įrašykite savo norimą ID!!! (PVZ:15)

Dabar reikia aktyvuoti "Dialog'ą". Po:

Kodas: Pasirinkti visus

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

{

Dedate:

Kodas: Pasirinkti visus

if(dialogid == DIALOGOID){

if(response){

new msg[128];

format(msg,sizeof(msg),"Atsiemete savo uzdirbta alga: %i LT",playerDB[playerid][alga]);

SendClientMessage(playerid,COLOR,msg);

GivePlayerMoneyA(playerid,playerDB[playerid][alga]);

playerDB[playerid][alga]=0;

return 1;

}

if(!response)

{

SendClientMessage(playerid,COLOR,"Sekmes :)");

return 1;}

}

Tu kažkoks nesveikas ar ką? Matai, kad prašau ne tokios algų sistemos, o kad direktoriai išmokėtų.

Va žiūrek tokia komanda čia iš pelno drk gales paiimt litus , o poto gales išdalyt

if(!strcmp(cmdtext,"/paiimti",true,9))
           {
      	 if(!cmdtext[9])
      	 {
               SendClientMessage(playerid,BLUE,"{ffffff} Paimti pinigu is firmos pelno: /dppaimti [kiek]");
               return 1;
           }

           if(!IsNumeric(cmdtext[10]))
           {
               SendClientMessage(playerid,RED,"{ffffff} Neteisingai nurodyta suma");
               return 1;
           }

           new darbas = GetJobFromFaction(playerDB[playerid][plead])-1;
           new suma = StringToInt(cmdtext[10]);

           if(suma > pelnas[darbas])
           {
               SendClientMessage(playerid,RED,"{ffffff} Tiek pinigu firmoje nera");
               return 1;
           }

           pelnas[darbas]-=suma;
           GivePlayerMoneyA(playerid,suma);
           SavePlayerData(playerid,false);

      	 new msg[128];
      	 format(msg,sizeof(msg),"{ffffff}Is firmos paemete: %i LTL.",suma);
      	 SendClientMessage(playerid,BLUE,msg);

      	 return 1;
       }

(redaguota)
CMD:MokamAlga ( playerid , params [ ] )
{
new pID , Pinigai;

if ( sscanf ( params , "ud" , pID , Pinigai ) ) return SendClientMessage ( playerid , -1 , "Naudok : /MokamAlga [ NAME ] [ LT ]" ) ;
if ( !IsPlayerConnected ( pID ) ) return SendClientMessage ( playerid , -1 , "Zaidejas OFFLINE" ) ;
GivePlayerMoney ( pID , Pinigai ) ;
SendClientMessage ( pID , -1 , "Tau Ismoke alga" ) ;
SendClientMessage ( playerid , -1 , "Sekmingai ismoket alga." ) ;

return 1;
}

Redaguota , nario QsuN

graphic.png


 


 


 


Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 4950 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...