Szerző Téma: Score Vétel  (Megtekintve 2100 alkalommal)

Nem elérhető KDDomi

  • 976
    • Profil megtekintése
Score Vétel
« Dátum: 2011. április 08. - 17:08:20 »
0 Show voters
Hello Forumózok!
Irtam egy scriptet amivel pontot lehet venni pénzér és ha megvette akor leveszi a pénzét amenyibe került és ha nincs anyi pénze kiirja azt is. Dialogos
Tesztelve müködik!
Letöltési link:
http://data.hu/get/3702386/score.pwn
Várom a véleményeket! :D
Segitök:
Drake
Mambo
Zsolesz
« Utoljára szerkesztve: 2011. november 13. - 11:46:01 írta APC »

Score Vétel
« Válasz #1 Dátum: 2011. április 08. - 17:33:45 »
0 Show voters
Rossz és pazarló <- Ha nagyon kritikus akarok lenni  :D
Viccet félretéve tényleg hibás,elõször is FSben main függvény régen rossz.
http://pastebin.com/N6DiMgTb
Nem teszteltem

Nem elérhető Mambo

  • 4239
    • Profil megtekintése
Score Vétel
« Válasz #2 Dátum: 2011. április 08. - 17:38:17 »
0 Show voters
Hol írtad meg? Drake. én, Zsolesz csinálta meg...

Score Vétel
« Válasz #3 Dátum: 2011. április 08. - 17:54:18 »
0 Show voters
Idézetet írta: Mambo date=1302277097\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7403\" data-ipsquote-contentclass=\"forums_Topic
Hol írtad meg? Drake. én, Zsolesz csinálta meg...
 
Zsolesszka csinálta meg 3X profibban.
KDDomi azt is ki kéne írd ki(k) segítettek....

Nem elérhető KDDomi

  • 976
    • Profil megtekintése
Score Vétel
« Válasz #4 Dátum: 2011. április 08. - 18:00:36 »
0 Show voters
Idézetet írta: ChuckNorris date=1302276825\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7403\" data-ipsquote-contentclass=\"forums_Topic
Rossz és pazarló <- Ha nagyon kritikus akarok lenni  :D
Viccet félretéve tényleg hibás,elõször is FSben main függvény régen rossz.
http://pastebin.com/N6DiMgTb
Nem teszteltem
 
Ez nem müködik! nem ir ki semmit amikor megveszem
Föpost modositva!

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Score Vétel
« Válasz #5 Dátum: 2011. április 08. - 18:04:47 »
0 Show voters
Már alapból rossz mivel akármelyikre mész akkor mindig csak +1-et ad hozzá a pontodhoz plusz ahogy látom még a pénzed se venné el.
E.:
Általam javított verzió:
http://pastebin.com/ZeQ2fBqD
« Utoljára szerkesztve: 2011. április 08. - 18:18:36 írta DrAkE »

Score Vétel
« Válasz #6 Dátum: 2011. április 08. - 19:26:48 »
0 Show voters
Valóban sokkal egyszerûbben meg lehet oldani íme megírtam én is egy változatot, és nem teszteltem bízok annyira magamban hogy mûködik gond nélkül, persze a túlzott mennyiségû használt filterscript esetében 99.9% az esély arra hogy a beírt parancs nem mûködik.
(ezért javaslom meglévõ gamemódba helyezni annak aki használni kívánja, egyetlen egy parancsért egy darab filterscript az túlzás)
Íme:
 

#include <a_samp>
#define DIALOG_SCORE   6678
public
OnFilterScriptInit()
{
print(\"Készítõ neve és funkciójának megfelelõ filterscript név.\");
return 1;
}
public
OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(\"/score\", cmdtext, true) == 0)
{
ShowPlayerDialog(playerid, DIALOG_SCORE, DIALOG_STYLE_LIST, \"Pont vétel:\",\"\\
1 pont [10000$]\\n\\
2 pont [20000$]\\n\\
3 pont [30000$]\\n\\
4 pont [40000$]\\n\\
5 pont [50000$]\\n\\
6 pont [60000$]\\n\\
7 pont [70000$]\\n\\
8 pont [80000$]\\n\\
9 pont [90000$]\\n\\
10 pont [100000$]\",
\"Megvesz\", \"Mégse\");
return 1;
}
return 0;
}
public
OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_SCORE)
{
if(response)
{
   new
      price = 10000 * (listitem + 1), // tároljuk a price változóban azt hogy mennyibe kerül a kiválasztott score ez esetben szerencsénk van mivel 10 ezresenként növekszik az ára, így csak szorozni kell.
      str[64];
   if(GetPlayerMoney(playerid) < price) 
   {
      format(str, sizeof str, \"%d score pont megvételéhez  %d$ kell és neked nincs ennyi!\", (listitem + 1), price);
      SendClientMessage(playerid, 0x0000FFAA, str);
   } else {      
      SetPlayerScore(playerid, GetPlayerScore(playerid) + listitem + 1);
      GivePlayerMoney(playerid, -price);
      format(str, sizeof str, \"Vettél %d pontot magadnak. %d$ -ért\", listitem + 1, price);
      SendClientMessage(playerid, 0xFF0000FF, str);
   }
}
return 1;
}
return 0;
}

 
Természetesen ez esetben óriási szerencse hogy a score pontok ára 10 ezres nagyságrendekkel növekszik, így csak szorozni kell.
Viszont ez nem azt jelenti hogy csak így lehet megoldani mint látni lehet sokaknak más elképzelése van, csak egy ilyen egyszerû dolog esetében is.
Kicsit átláthatóbb formába próbáltam tenni, emellett minden meglévõ tulajdonságot megõrizni is, (kevés pénz esetében kiírni mennyibe kerül a kiválasztott score, tájékoztatni a játékost arról mit is vett meg és mennyiért) remélem sikerült.
Edit: jha igen és a biztató szavak, csak így tovább lesz ez még jobb is.  :D
« Utoljára szerkesztve: 2011. április 08. - 19:31:59 írta Zsolesszka »

Nem elérhető lusta19

  • 9084
  • £u$taÐi$znó
    • Profil megtekintése
Score Vétel
« Válasz #7 Dátum: 2011. április 08. - 20:20:41 »
0 Show voters
Mi értelme van olyan scriptet publikálni amit 85% -ban mások csináltak meg.?
Másik hogy nem is müködik :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal