Jump to content

[XSS]MaxXx

Membru
  • Posts

    68
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by [XSS]MaxXx

  1. Iti trebuie un domeniu si acces la cPanel pentru o adresa DNS sub forma sub care o vrei tu.
  2. for(new i; i <= MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { PlayAudioStreamForPlayer(i, "http://link-melodie.mp3"); } }
  3. Inseamna ca "tmp" mai este definit undeva in script.
  4. Arata ok in poze :grin:.
  5. Folosestete de OnPlayerKeyStateChange(playerid, newkeys, oldkeys) Iar la ce anume vrei tu foloseste OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if (newkeys & KEY_SPRINT) { //Restul Codului... } //Alte coduri... }
  6. http://wiki.sa-mp.com/wiki/SetTimer forwarnd TimerulMeu(); SetTimer("TimerulMeu", 1000, false); //1000 = 1 Secunda public TimerulMeu() { //Codul... } Ultimul parametru al Timerului il pui "false" daca vrei ca el sa ruleze doar o singura data functia respectiva. forwarnd TimerulMeu(); SetTimer("TimerulMeu", 1000, true); //1000 = 1 Secunda public TimerulMeu() { //Codul... } Sau "true" daca vrei ca timer-ul respectiv sa ruleze o anumita functie la fiecare Secunda in cazul exemplului de mai sus...
  7. Descarca ultima versiune a plugin-ului lui Incognito. http://code.google.com/p/samp-streamer-plugin/downloads/detail?name=streamer_plugin_v2_6_1_r79.zip&can=1&q=label%3A0.3e
  8. Incearca sa le mai convertesti odata (http://www.convertffs.com/) :-).
  9. Din numele functiei ar fi trebuit sa iti fi dat seama singur... http://wiki.sa-mp.com/wiki/GetPlayerName
  10. Daca e pe baza de dialog-uri acel Login System inseamna ca ai "Kick(playerid)" la "if(response)".
  11. Actualizeaza-ti include-urile... probabil le ai pe cele de pe 0.3c sau mai vechi de nu ti se compileaza scriptul cu functiile aparute in 0.3d.
  12. Pune UsePlayerPedAnims(); la OnGameModeInit.
  13. Arata-ne ce ai la OnPlayerConnect.
  14. Arata-ne ce iti apare in server-log.txt si server.cfg. Eventual uitate la "OnPlayerConnect" si vezi daca gasesti ceva ciudat ce ti-ar putea inchide server-ul . Fara prea multe detalii nu te putem ajuta sa iti rezolvi problema.
  15. Engleza, eu asa am facut la server-ul meu (chiar daca e unul de Stunt) :grin:. Pentru ca: In prezent sunt foarte putini cei care nu stiu nici macar un "strop" de engleza aici referindu-ma la playerii romani. In al doilea rand poti atrage mai multi playeri, nu numai romani ci si straini cu care te poti descurca mai usor decat cu romanii din simplul motiv ca ei nu iti v-or cere leadere, bla.. bla doar pentru a se juca pe server si se v-or juca daca le va place si v-or avea cu cine...
  16. Iti scade viata in sensul ca iti scade fara sa faci nimic ce ti-ar putea scadea din viata ?
  17. Cauta la "OnPlayerEnterVehicle" sau la "OnPlayerStateChange" functia "TogglePlayerControllable".
  18. Asta nu e tutorial. Ce-ai facut tu aici a fost sa copiezi niste lucruri dintr-un GameMode (RSS v2 cred) si sa le postezi ca un asa zis "Tutorial".
  19. Poarta trebuie adaugata cu "CreateObject" la OnFilterScriptInit daca vrei sa te folosesti de functia "MoveObject". Daca vrei sa te folosesti de Streamer poti folosii "CreateDynamicObject" si "MoveDynamicObject" ca sa muti obiectul respectiv.
  20. [XSS]MaxXx

    SQLite

    Acum m-am uitat mai atent la tot scriptul tau si pot spune ca e cam aiurea... Schimba asta: public OnPlayerConnect(playerid) { new nume[30],DBResult:Rezultat; GetPlayerName(playerid,nume,30); format(Query,2048,"SELECT `Key`,`Bani`,`Score`,`Deaths` FROM `Database` WHERE `nume` = '%s'",nume); Rezultat = db_query(Database,Query); if(db_num_rows(Rezultat) == 1 ) { new field[2048]; db_get_field_assoc(Rezultat,"Bani",field,2048); db_get_field_assoc(Rezultat,"Score",field,2048); db_get_field_assoc(Rezultat,"Deaths",field,2048); P_DATA[playerid][Bani] = strval(field); P_DATA[playerid][Score] = strval(field); P_DATA[playerid][Deaths] = strval(field); } else { format(Query,2048,"INSERT INTO `Database` VALUES (NULL,'%s','%d','%d','%d')",nume,P_DATA[playerid][Bani] = 0,P_DATA[playerid][Score] = 0,P_DATA[playerid][Deaths] = 0); } db_free_result(Rezultat); return 1; } In asta: public OnPlayerConnect(playerid) { new nume[30],DBResult:Rezultat; GetPlayerName(playerid,nume,30); format(Query,2048,"SELECT `Key`,`Bani`,`Score`,`Deaths` FROM `Database` WHERE `nume` = '%s'",nume); Rezultat = db_query(Database,Query); if(db_num_rows(Rezultat) == 1 ) { new field[2048]; db_get_field_assoc(Rezultat,"Bani",field,2048); P_DATA[playerid][Bani] = strval(field); db_get_field_assoc(Rezultat,"Score",field,2048); P_DATA[playerid][Score] = strval(field); db_get_field_assoc(Rezultat,"Deaths",field,2048); P_DATA[playerid][Deaths] = strval(field); } else { format(Query,2048,"INSERT INTO `Database` (`nume`, `Bani`, `Score`, `Deaths`) VALUES (%s','%d','%d','%d')",nume, P_DATA[playerid][Bani] = 0,P_DATA[playerid][Score] = 0,P_DATA[playerid][Deaths] = 0); } db_free_result(Rezultat); return 1; } Spre exemplu aici: db_get_field_assoc(Rezultat,"Bani",field,2048); db_get_field_assoc(Rezultat,"Score",field,2048); db_get_field_assoc(Rezultat,"Deaths",field,2048); P_DATA[playerid][Bani] = strval(field); P_DATA[playerid][Score] = strval(field); P_DATA[playerid][Deaths] = strval(field); Preiei rezultatele din baza de date intr-o variabila numita "field" ce e inlocuita cu o noua valoare de fiecare data cand preiei o data din baza de data prin "db_get_field_assoc(Rezultat,"Bani",field,2048);" asta insemnand ca variabilelele "P_Data" v-or avea toate valoarea de la "Deaths". Ar mai fi de mentionat ca nu ai nevoie de un string atat de mare... poti folosii unul de 100... Cum ar trebuii sa arate codul de mai sus e astfel: new field[100]; db_get_field_assoc(Rezultat,"Bani",field,100); P_DATA[playerid][Bani] = strval(field); db_get_field_assoc(Rezultat,"Score",field,100); P_DATA[playerid][Score] = strval(field); db_get_field_assoc(Rezultat,"Deaths",field,100); P_DATA[playerid][Deaths] = strval(field); In al doilea rand aici: public OnPlayerDisconnect(playerid, reason) { new nume[30]; GetPlayerName(playerid,nume,30); format(Query,2048,"UPDATE `Database` SET `nume` = '%s',`Bani` = '%d',`Score` = '%d',`Deaths` = '%d'",nume,P_DATA[playerid][Bani],P_DATA[playerid][Score],P_DATA[playerid][Deaths]); db_free_result(db_query(Database,Query)); return 1; } Tu mai sus prin statement-ul "UPDATE" actualizezi date din baza de date... greseala pe care o faci e ca actualizezi si numele din baza de date de fiecare data cand un jucator se deconecteaza ceea ce nu vrei sa se intample... Mai jos e cum ar trebuii sa fie... public OnPlayerDisconnect(playerid, reason) { new nume[30]; GetPlayerName(playerid,nume,30); format(Query,2048,"UPDATE `Database` SET `Bani` = '%d',`Score` = '%d',`Deaths` = '%d' WHERE `nume` = '%s'", P_DATA[playerid][Bani],P_DATA[playerid][Score],P_DATA[playerid][Deaths], name); db_free_result(db_query(Database,Query)); return 1; } Dupa cum vezi in acest "Query" apare si statement-ul "WHERE" care in traducere inseamna "Unde" ce ii spune server-ului sa actualizeze (UPDATE) datele din baza de date acolo unde numele este egal cu numele jucatorului.
  21. [XSS]MaxXx

    SQLite

    Schimba asta db_free_result(db_query(Database,"CREATE TABLE IF NOT EXISTS `Database`(`Key`INTEGER PRIMARY KEY AUTOINCREMENT,\ `Nume`TEXT,\ `Bani`NUMERIC,\ `Score`NUMERIC,\ `Deaths`NUMERIC)")); cu asta: db_query(Database,"CREATE TABLE IF NOT EXISTS `Database`(`Key`INTEGER PRIMARY KEY AUTOINCREMENT,\ `Nume`VARCHAR(10),\ `Bani`INT(10),\ `Score`INT(10),\ `Deaths`INT(10)");
  22. Arata-ne o comanda care nu iti merge atunci cand esti intr-un vehicul sau publicul "OnPlayerCommandText".
  23. Incearca sa convertesti toate obiectele din CreateObject in CreateDynamicObject folosindu-te de un Convertor online (http://www.convertffs.com/).
  24. La OnGameMode/FilterScriptInit. SetTimer("TipMessages", 30000, true);//Iti va trimite un mesaj in chat odata la 30 de secunda.
  25. Sau... mai simplu... if(dialogid == ID) //Unde ID = ID-ul de la Dialogul tau { if(response) { switch(listitem) { case 0: CallRemoteFunction("OnPlayerCommandText", "is", playerid, "/cmds"); case 1: CallRemoteFunction("OnPlayerCommandText", "is", playerid, "/teles"); case 2: CallRemoteFunction("OnPlayerCommandText", "is", playerid, "/credits"); //etc } } }
×
×
  • 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.