Jump to content

WiDuAlK

V.I.P
  • Posts

    1,338
  • Joined

  • Last visited

  • Days Won

    94

Everything posted by WiDuAlK

  1. Ori convertesti tutorialele pe ini ori folosesti asta:
  2. Eu nu as merge pe idea de : public PoliceCar(carid)// se face publicul de restrictie { if((carid >= 1) && (carid <=5))// daca id la vehicul este intre 1 si 5 { return 1;// ii returnam 1 } return 0;// daca nu se afla intre 1 si 5 nu se returneaza nimic. } deoarece faci verificare pe id masinii si este posibil sa se dea la un moment dat peste cap id-urile lor. Exemplu, daca introduci un FS cu masini in el o sa faca load mai intai la masinile din FS si apoi din GM, cea ce va duce la modificarea id-urilor masinilor din joc iar masinile de la factiuni vor fi date peste cap. Exemplu 2: Cand faci dealership-ul o sa se creeze masini personale noi, iar id-ul lor va fi corect, dar dupa restart va fi data peste cap ordinea vehiculelor, si din nou vor exista probleme. De preferat ar fi metoda: new CarPD1, CarPD2, CarPD4 ....; public OnGameModeInit() { CarPD1 = CreateVehicle(...); CarPD2 = CreateVehicle(...); CarPD3 = CreateVehicle(...); CarPD4 = CreateVehicle(...); return 1; } public PoliceCar(carid)// se face publicul de restrictie { if((carid == CarPD1 || carid == CarPD2 || carid == CarPD3 || carid == CarPD4)) { return 1; } return 0; } Acum, indiferent de id lor nu vor exista probleme.
  3. Merci. Dar de preferat ar fi metoda 2, deoarece nu iti convine sa stai 30-40 minute pe server si sa iesi din diferite probleme si pierzi payday, si sa intre altcineva in ultimele 5 minute si sa primeasca payday.
  4. Tu la /givehours ce vrei sa iti trimita? +1 respectPoint sau ora(timp de stat pe server)? pentru ca sunt 2 chestii diferite
  5. Tu vrei toate de pe server sau...? Explica mai bine.
  6. Asa arata cererea, chiar sub ochii tai Model pentru cererea de ajutor Toti cei care au nevoie de ajutor trebuie sa respecte acest model. MODEL: Problema intalnita (descriere): Ero(area / rile) / warning-(ul / urile): Liniile de cod / sursa / script-ul(obligatoriu): Imagini / Video (optional): Ati incercat sa rezolvati singur?: REGULAMENT Cine nu pune Liniile codului / sursa / script-ul nu se va lua in considerare cererea de ajutor. Cererile de ajutor nu au voie sa contina id-uri de Yahoo Messenger sau alte id-uri de Skype gmail etc... Nu jigniti pe cineva daca incearca sa va ajute si nu reuseste. Postaţi mereu ero(area / rile) / warning-(ul / urile) si sursa pentru a va putea ajuta (nu tot gamemode-ul / filterscript-ul). Postaţi cat mai multe detalii în descriere. Ce ai postat tu tine de discutii scripting, dar am sa-ti arat CMD:comandaahelp(playerid, params[]) { if(P_DATA[playerid][pAdmin] < 1) return SendClientMessage(playerid, culoare, "Nu faci parte din echipa de admini."); new mesaj[120], string[144]; if(sscanf(params, "s[119]", mesaj)) return SendClientMessage(playerid, culoare, "/comandaahelp [MESAJ]); for(new i = 0; i <= MAX_PLAYERS; i++) { if(P_DATA[playerid][pAdmin] > 0) { format(string, sizeof(string), "Admin %s: %s", GetName(playerid), mesaj); } } return 1; } Topic Close, pentru ca nu ai respectat modelul. Daca ai nelamuriri posteaza la sectiunea potrivita.
  7. stiu asta, am vazut ca s-a postat problema de genu. ca sa nu se execute de 60 ori trebuie sa pui: if(minute == 0 && secunde == 0)
  8. Problema ta este cauzata din cauza SyncUp, dar si timer-ul ar trebui ajustat.: synctimer = SetTimer("SyncUp", 1000, 1); Asa va verifica odata la o secunda, iar in SyncUP trebuie modificata verificarea pentru a primi la ora fixa payday public SyncUp() { new string[128], tmphour, tmpminute, tmpsecond, hour, minn, sec; gettime(hour,minn,sec); gettime(tmphour, tmpminute, tmpsecond); FixHour(tmphour); tmphour = shifthour; if (minn == 0 && sec == 0) { format(string, sizeof(string), "SERVER: The time is now %d:00 hours",hour); BroadCast(COLOR_WHITE,string); ghour = tmphour; PayDay(); if(hour == 20 || hour == 10 || hour == 22) { format(string, sizeof(string), "Lottery News: We have started the Lottery Election."); OOCOff(COLOR_WHITE, string); new rand = random(80); if(rand < 77) { rand += 3; } Lotto(rand); } if(hour == 22) { mysql_tquery(SQL,"UPDATE users SET FactionTime = FactionTime+1 WHERE Member > 0","",""); foreach(Player, i) { new escstr2[MAX_PLAYER_NAME], result[500], query[500]; GetPlayerName(i, escstr2, sizeof(escstr2)); format(query, sizeof(query), "SELECT `FactionTime` FROM users WHERE `name` = '%s'", escstr2); mysql_store_result(); mysql_query(SQL,query); if(mysql_retrieve_row()) { mysql_fetch_field_row(result, "FactionTime"); PlayerInfo[i][pFactionTime] = strval( result ); } mysql_free_result(); } } if(hour == 23) { new str[256]; for(new turf = 1; turf < sizeof(TurfInfo); turf++) { TurfInfo[turf][zTime] = 0; mysql_format(SQL,str,sizeof(str),"UPDATE `turfs` SET `Time`='0' WHERE `ID`='%d'",turf); mysql_tquery(SQL,str,"",""); } } if (realtime) { SetWorldTime(hour); } } return 1; }
  9. erori din acestea apar si cand nu ai pus o sintaxa la linia precedenta. Verifica.
  10. Problema s-ar putea sa fie din cauza WP_Hash. Sterge WP_Hash si inlocuieste cu MD5 http://forum.sa-mp.com/showthread.php?t=479288 E mult mai OK, mai ales ca poti accesa mai usor un panel(daca ai, bine-inteles)
  11. posteaza dialogul login
  12. WiDuAlK

    Ajutor

    De obicei crashdetect iti da linia. Fa-i update si pune-l primul in lista de plugins din server.cfg, apoi verifica daca te trimite la o linie anume, acum te trimite la un callback...
  13. if(IsPlayerInRangeOfPoint(playerid,10,1294.8019,-1874.4962,13.5888)) { if(PlayerPlayRadio[playerid] == 0) { //liniile tale } else continue; stocheaza o variabila pentru radio de genu: PlayerPlayRadio[MAX_PLAYERS]; iar in comanda pune ceva de genu: if(IsPlayerInRangeOfPoint(playerid,10,1294.8019,-1874.4962,13.5888)) { if(PlayerPlayRadio[playerid] == 0) { //liniile tale } else continue;
  14. Cred ca acolo a copiat dintr-un GM in altul si nu are functia, asta pare mai exact, pt ca ii afiseaza ca nu a implementat functia. Ce ti-am dat eu acolo, pune in afara oricarui public.
  15. Il compilezi cu PAWNO. T/C 1 ora la dispozitie sa vezi, dupa va merge in arhiva. Nu ai postat la sectiunea potrivita. Data viitoare postezi la Discutii Scripting.
  16. Invata, ca nimeni nu s-a nascut invatat, dar ca sa inveti trebuie sa exersezi, sa testezi sa refaci ca sa iti intre in cap. Nu sa stai si sa astepti de-agata
  17. PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z) { if(IsPlayerConnected(playerid)) { new Float:oldposx, Float:oldposy, Float:oldposz; new Float:tempposx, Float:tempposy, Float:tempposz; GetPlayerPos(playerid, oldposx, oldposy, oldposz); tempposx = (oldposx -x); tempposy = (oldposy -y); tempposz = (oldposz -z); if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi))) { return 1; } } return 0; } Asta e functia. Daca nu merge fa-l public
  18. Poti incerca asta: http://forum.sa-mp.com/showthread.php?t=553808
  19. Pune crashdetect si verifica ce iti da.
  20. fa-i debugg si verifica treptat fiecare bucata de cod ca sa iti dai seama de unde provine problema.
  21. Bai , stii ceva, nu conteaza de unde au hostul... Pentru ca fiecare dintre noi putem alege de unde sa luam. Bine inteles, putem sa ne orientam dupa firmele mai cunoscute si care au un dedicat bun in componente, nu ma prea pricep, @-=[Vyorel]=- ne poate spune mai multe. Dar ca sa iti ruleze serverul fara lag nu e de ajuns un host bun, trebuie si un GM optimizat.
  22. Inseamna ca nu faci bine verificarea vehiculului. pune cv de genu: if(GetPlayerVehicleID(playerid) == Truckcar[h]) si vezi daca merge.
  23. Ok , si care e problema atunci?
  24. WiDuAlK

    Error!

    Cred ca mai probabil e o acolada uitata, pentru ca primeste la mai multe eroare
×
×
  • 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.