Szerző Téma: Teleportok  (Megtekintve 1647 alkalommal)

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Teleportok
« Dátum: 2013. február 28. - 14:31:49 »
+8 Show voters
Ez a kis kód lehetõvé teszi,hogy játékon belöl hozzatok létre/töröljetek teleportokat.
Készítõ:Bendi.(én)
Készítési idõ:10 perc (teszteléssel)
Szükséges includek:
 
  • a_samp

  • dini

  • sscanf

  • zcmd


 
CMD:maketele(playerid,params[])
{
new telename[20],Float:posx,Float:posy,Float:posz;
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /maketele [teleport neve]\");
strcat(telename,\".ini\");
if(dini_Exists(telename)) return SendClientMessage(playerid,-1,\"Ez a teleport már létezik\");
dini_Create(telename);
GetPlayerPos(playerid,posx,posy,posz);
dini_FloatSet(telename,\"X\",posx);
dini_FloatSet(telename,\"Y\",posy);
dini_FloatSet(telename,\"Z\",posz);
SendClientMessage(playerid,-1,\"Sikeresen létrehoztad a teleportot!\");
return 1;
}
CMD:tele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /tele [teleport neve]\");
strcat(telename,\".ini\");
if(!dini_Exists(telename)) return SendClientMessage(playerid,-1,\"Ez a teleport nem létezik\");
if(IsPlayerInAnyVehicle(playerid)) SetVehiclePos(GetPlayerVehicleID(playerid),dini_Float(telename,\"X\"),dini_Float(telename,\"Y\"),dini_Float(telename,\"Z\")),SendClientMessage(playerid,-1,\"Sikeres teleportálás!\");
else SetPlayerPos(playerid,dini_Float(telename,\"X\"),dini_Float(telename,\"Y\"),dini_Float(telename,\"Z\")),SendClientMessage(playerid,-1,str),SendClientMessage(playerid,-1,\"Sikeres teleportálás!\");
return 1;
}
CMD:deletele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /deletele [teleport neve]\");
strcat(telename,\".ini\");
if(!dini_Exists(telename)) return SendClientMessage(playerid,-1,\"Ez a teleport nem létezik\");
dini_Remove(telename),SendClientMessage(playerid,-1,\"Sikeresen törölted a teleportot!\");
return 1;
}

 
mysql-el(nem biztos,hogy jó):
 

CMD:maketele(playerid,params[])
{
new telename[20],Float:posx,Float:posy,Float:posz;
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /maketele [teleport neve]\");
//strcat(telename,\".ini\");
GetPlayerPos(playerid,posx,posy,posz);
new query[128];
format(query,sizeof(query),\"INSERT INTO teles (neve,x,y,z) VALUES (\'%s\',\'%f\',\'%f\',\'%f\')\",telename,posx,posy,posz);
mysql_query(query);
SendClientMessage(playerid,-1,\"Sikeresen létrehoztad a teleportot!\");
return 1;
}
CMD:tele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /tele [teleport neve]\");
new query[128];
format(query,sizeof(query),\"SELECT x,y,z FROM teles WHERE name=\'%s\'\",telename);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(query);
new values[4];
sscanf(query, \"f,f,f\", values);
SetPlayerPos(playerid,values[1],values[2],values[3]);
mysql_free_result();
              SendClientMessage(playerid,-1,\"Sikeres teleportálás\");
return 1;
}
CMD:deletele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /deletele [teleport neve]\");
new query[128];
format(query,sizeof(query),\"DELETE FROM teles WHERE name=\'%s\'\",telename);
mysql_query(query);
SendClientMessage(playerid,-1,\"Sikeres törlés!\");
return 1;
}
« Utoljára szerkesztve: 2013. február 28. - 16:55:49 írta Bendor »

Teleportok
« Válasz #1 Dátum: 2013. február 28. - 14:52:55 »
0 Show voters
Jó lett tesa!  :D

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Teleportok
« Válasz #2 Dátum: 2013. február 28. - 15:13:09 »
0 Show voters
köszi :)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Teleportok
« Válasz #3 Dátum: 2013. február 28. - 15:35:32 »
0 Show voters
kapsz 2 pluszt ha mysql-ba elkészíted. :)

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Teleportok
« Válasz #4 Dátum: 2013. február 28. - 15:36:14 »
0 Show voters
Majd megpróbálom :D

Nem elérhető Beckham

  • 1693
  • Noresz
  • Discord: Noresz#4265
    • Profil megtekintése
    • OctansV Alt:v szervere
Teleportok
« Válasz #5 Dátum: 2013. február 28. - 15:36:50 »
0 Show voters
Jó lett tesó  <3

Nem elérhető Cappsy

  • Adminisztrátor
  • 2754
    • Profil megtekintése
Teleportok
« Válasz #6 Dátum: 2013. február 28. - 15:49:35 »
0 Show voters
eszes :)

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Teleportok
« Válasz #7 Dátum: 2013. február 28. - 16:13:49 »
+1 Show voters
Köszönöm a dícséreteket.
Itt a mysql-es verzió,bár nem biztos,hogy jó:
 

CMD:maketele(playerid,params[])
{
new telename[20],Float:posx,Float:posy,Float:posz;
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /maketele [teleport neve]\");
//strcat(telename,\".ini\");
GetPlayerPos(playerid,posx,posy,posz);
new query[128];
format(query,sizeof(query),\"INSERT INTO teles (neve,x,y,z) VALUES (\'%s\',\'%f\',\'%f\',\'%f\')\",telename,posx,posy,posz);
mysql_query(query);
SendClientMessage(playerid,-1,\"Sikeresen létrehoztad a teleportot!\");
return 1;
}
CMD:tele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /tele [teleport neve]\");
new query[128];
format(query,sizeof(query),\"SELECT x,y,z FROM teles WHERE name=\'%s\'\",telename);
mysql_query(query);
mysql_store_result();
mysql_fetch_row(query);
new values[4];
sscanf(query, \"f,f,f\", values);
SetPlayerPos(playerid,values[1],values[2],values[3]);
mysql_free_result();
              SendClientMessage(playerid,-1,\"Sikeres teleportálás\");
return 1;
}
CMD:deletele(playerid,params[])
{
new telename[20];
if(sscanf(params,\"s[20]\",telename)) return SendClientMessage(playerid,-1,\"Használat: /deletele [teleport neve]\");
new query[128];
format(query,sizeof(query),\"DELETE FROM teles WHERE name=\'%s\'\",telename);
mysql_query(query);
SendClientMessage(playerid,-1,\"Sikeres törlés!\");
return 1;
}
« Utoljára szerkesztve: 2013. február 28. - 16:54:35 írta Bendor »

Nem elérhető Norby

  • 1575
    • Profil megtekintése
Teleportok
« Válasz #8 Dátum: 2013. február 28. - 16:47:29 »
0 Show voters
mysql_free_result() után (,) vesszõt tettél ( ; ) pontos vesszõ kell!
DELETE * FROM helyett DELETE FROM
És ez a lekérdezés, hát.. Tesztelted?

Nem elérhető bendor

  • 2949
    • Profil megtekintése
Teleportok
« Válasz #9 Dátum: 2013. február 28. - 16:59:12 »
0 Show voters
Köszönöm,hogy szóltál. Nem teszteltem.
Egyébként ez életem elsõ mysql-es munkája.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal