Szerző Téma: Autómatikus kocsi javító(letiltható)  (Megtekintve 4125 alkalommal)

Nem elérhető Buba

  • 540
    • Profil megtekintése
Autómatikus kocsi javító(letiltható)
« Dátum: 2011. április 01. - 20:29:05 »
0 Show voters
[FS]Autómatikus kocsi javító
~~~~~~~~~ Bevezetés ~~~~~~~~~
Üdv!!
Ugye sok stunt szerveren van /fix vagy /vr parancs ...
De stunt közben ezeket beírni nehéz és elronthatod vele a mutatványt, amíg írsz(shortkey macerás szerintem)
Ha meg olyan kocsi javítót alkalmazunk, ami mindig megjavítja a kocsid, akkor nem mehetsz derbyzni, meg semmi értelme ha lövik a kocsid...
DE:
Ezt elkerülhetjük azzal hogy....
A kocsi javítást letiltjuk, engedélyezzük.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~ Letöltés ~~~~~~~~~
/repairletilt
/repairenged
Gondolom érthetõ, amit elér a hatásuk
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~ Jogok ~~~~~~~~~
A script teljes mértékben BuBa keze alatt készült, a módosítása engedélyezett. A teljes script sajátként feltüntetése script lopásnak számít.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~ Plugins ~~~~~~~~~
zcmd.inc
Tipp:A zcmd.inc -t tedd a pawno/includes mappába.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~ Letöltés ~~~~~~~~~
Autorepair [AMX + PWN]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
« Utoljára szerkesztve: 2011. november 13. - 11:46:12 írta APC »

Autómatikus kocsi javító(letiltható)
« Válasz #1 Dátum: 2011. április 01. - 21:14:56 »
0 Show voters
Ránézésre ötletes :D majd kipróbálom

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
Autómatikus kocsi javító(letiltható)
« Válasz #2 Dátum: 2011. április 04. - 09:57:37 »
0 Show voters
Csak annyit fûznék hozzá hogy semmi értelme olyan Timert használni ami 1 másodpercenként megjavítaná a kocsikat (tudtommal senkinek se javítaná a kocsiját, mivel a kocsijavit(playerid) prototípusban nem hiovatkoztál rá hogy melyik playeridnek a kocsiját javítsa meg, ezáltal nem javítaná mindenkinek, hacsak egy for ciklussal mindenkinek megjavítanád) mikor értelmesebben is meglehet oldani.
Itt egy jobb, kevésbé terhelõ, picivel gyorsabb, tömörebb verzió:
 
#include <a_samp>
#include <zcmd>
#define COLOR_SIKERES 0x000080AA
#define COLOR_SIKERTELEN 0xFF0000AA
public OnFilterScriptInit() print(\" Autómatikus kocsi javító betöltve\");
public OnFilterScriptExit() print(\" Autómatikus kocsi javító kivéve\");
public OnPlayerConnect(playerid) SetPVarInt(playerid, \"javito\", 0);
public OnPlayerDisconnect(playerid, reason) SetPVarInt(playerid, \"javito\", 0);
public OnVehicleDamageStatusUpdate(vehicleid, playerid) if(GetPVarInt(playerid, \"javito\")) RepairVehicle(vehicleid);
CMD:repairletilt(playerid,params[]) // A játékos letilthatja magának
{
    if(!GetPVarInt(playerid, \"javito\")) SetPVarInt(playerid, \"javito\", 1),
SendClientMessage(playerid,COLOR_SIKERES,\"Sikeresen letiltottad az autód javítását, ha összetöröd nem javul meg!\"),
SendClientMessage(playerid,COLOR_SIKERES,\"Ha újra törhetetlenné akarod tenni: /repairenged \");
else SendClientMessage(playerid,COLOR_SIKERTELEN,\"Már le volt tiltva neked az autómatikus javítás!!!\");
return 1;
}
CMD:repairenged(playerid,params[]) // A játékos engedélyezheti
{
    if(GetPVarInt(playerid, \"javito\")) SetPVarInt(playerid, \"javito\", 0),
SendClientMessage(playerid,COLOR_SIKERES,\"A kocsid törhetetlen újra! Ha akarod hogy \'törékeny\' legyen, /repairletilt\");
else SendClientMessage(playerid,COLOR_SIKERTELEN,\"Neked eddig is engedélyezve volt a kocsi törhetetlenség!\");
return 1;
}
« Utoljára szerkesztve: 2011. április 04. - 12:00:37 írta DrAkE »

Koncz_Norbert

  • Vendég
Autómatikus kocsi javító(letiltható)
« Válasz #3 Dátum: 2011. április 04. - 11:18:41 »
0 Show voters
Idézetet írta: Buba date=1301682545\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7267\" data-ipsquote-contentclass=\"forums_Topic
...
~~~~~~~~~ Plugins ~~~~~~~~~[/color]
zcmd.inc
Tipp:A zcmd.inc -t tedd a pawno/includes mappába.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
 
El vagy tájolva. :D
Az nem plugin. De ha pluginos akkor sry :angel:
(még nem probáltam ki)

Autómatikus kocsi javító(letiltható)
« Válasz #4 Dátum: 2011. április 04. - 11:48:42 »
0 Show voters
Idézetet írta: DrAkE date=1301903857\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7267\" data-ipsquote-contentclass=\"forums_Topic
Csak annyit fûznék hozzá hogy semmi értelme olyan Timert használni ami 1 másodpercenként megjavítaná a kocsikat (tudtommal senkinek se javítaná a kocsiját, mivel a kocsijavit(playerid) prototípusban nem hiovatkoztál rá hogy melyik playeridnek a kocsiját javítsa meg, ezáltal nem javítaná mindenkinek, hacsak egy for ciklussal mindenkinek megjavítanád) mikor értelmesebben is meglehet oldani.
Itt egy jobb, kevésbé terhelõ, picivel gyorsabb verzió, tömör verzió:
 
#include <a_samp>
#include <zcmd>
#define COLOR_SIKERES 0x000080AA
#define COLOR_SIKERTELEN 0xFF0000AA
public OnFilterScriptInit() print(\" Autómatikus kocsi javító betöltve\");
public OnFilterScriptExit() print(\" Autómatikus kocsi javító kivéve\");
public OnPlayerConnect(playerid) SetPVarInt(playerid, \"javito\", 0);
public OnPlayerDisconnect(playerid, reason) SetPVarInt(playerid, \"javito\", 0);
public OnVehicleDamageStatusUpdate(vehicleid, playerid) if(GetPVarInt(playerid, \"javito\")) RepairVehicle(vehicleid);
CMD:repairletilt(playerid,params[]) // A játékos letilthatja magának
{
    if(!GetPVarInt(playerid, \"javito\")) SetPVarInt(playerid, \"javito\", 1),
SendClientMessage(playerid,COLOR_SIKERES,\"Sikeresen letiltottad az autód javítását, ha összetöröd nem javul meg!\"),
SendClientMessage(playerid,COLOR_SIKERES,\"Ha újra törhetetlenné akarod tenni: /repairenged \");
else SendClientMessage(playerid,COLOR_SIKERTELEN,\"Már le volt tiltva neked az autómatikus javítás!!!\");
return 1;
}
CMD:repairenged(playerid,params[]) // A játékos engedélyezheti
{
    if(GetPVarInt(playerid, \"javito\")) SetPVarInt(playerid, \"javito\", 0),
SendClientMessage(playerid,COLOR_SIKERES,\"A kocsid törhetetlen újra! Ha akarod hogy \'törékeny\' legyen, /repairletilt\");
else SendClientMessage(playerid,COLOR_SIKERTELEN,\"Neked eddig is engedélyezve volt a kocsi törhetetlenség!\");
return 1;
}

 

Valóban DrAkE megoldása sokkal jobb, nincs plusz felesleges timer.
Egyet felejtettetek el mivel zcmd-t használtok és filterscriptként írtátok meg.
 

Note #1: If you want to use zcmd in a filterscript, put this define before including:
 

#define FILTERSCRIPT

 

[/quote]

ZCMD
Tehát helyesen:
 

#include <a_samp>
#define FILTERSCRIPT
#include <zcmd>

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
Autómatikus kocsi javító(letiltható)
« Válasz #5 Dátum: 2011. április 04. - 15:37:27 »
0 Show voters
Szép lett, Drake megoldása jobb, hatékonyabb, mivel PVar-t használt.

Megjegyezném:

 
public OnVehicleDamageStatusUpdate(vehicleid, playerid) if(GetPVarInt(playerid, \"javito\")) RepairVehicle(vehicleid);

 
Ez sajnos nem mindig jó. Pl., felborultál, keresed a /flip parancso (  ;D ) és akkor nem fog elállni az égés hanem felfogsz robbanni. Ezért használom én még mindig a timeres megoldást (vagy OnPlayerUpdatest ?!)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal