Szerző Téma: Egyszerû object lerakó  (Megtekintve 2081 alkalommal)

Egyszerû object lerakó
« Dátum: 2013. december 12. - 21:25:45 »
0 Show voters
Sziasztok!
Ez a code arra jó, amit map editorral nem igazán lehet megcsinálni: példáult lejtõn elhelyezni növényeket úgy, hogy mindegyik növény egyforma magas lesz mm-re pontosan. Az ötlet akkor jött, amikor az elõbb leírtakkal vacakoltam map-editorral :D
Fícsörz vagy mi:
Megjelenik az object ott, ahol állunk
Lementi az objectet a scriptfiles mappába, modba másolható állapotban (objectek.ini)
/letesz [objectid] paranccsal megy
Készítõ: Én és kb 5, max 10 perc volt
Szükséges hozzá a sscanf2, streamer, dini és a ZCMD include, amit meg lehet találni a fórumon.
Remélem ti is olyan jó hasznát veszitek, mint én :)
 
CMD:letesz(playerid, params[])
{
new obbj;
new entry[256];
new File:hFile;
new Float:ox, Float:oy, Float:oz;
if(sscanf(params, \"i\", obbj)) return SendClientMessage(playerid, COLOR_GREY, \"Használat: /letesz [id]\");
{
GetPlayerPos(playerid, ox, oy, oz);
if(!dini_Exists(\"objectek.ini\"))
                {
                dini_Create(\"objectek.ini\");
         format(entry, sizeof(entry), \"CreateDynamicObject(%i,%f,%f,%f,0.0000000,0.0000000,0.0000);\\r\\n\",obbj, ox,oy,oz);
         CreateDynamicObject(obbj,ox,oy,oz,0.0000000,0.0000000,0.0000);
         hFile = fopen(\"objectek.ini\", io_append);
         fwrite(hFile, entry);
         fclose(hFile);
                }else{
         format(entry, sizeof(entry), \"CreateDynamicObject(%i,%f,%f,%f,0.0000000,0.0000000,0.0000);\\r\\n\",obbj, ox,oy,oz);
                   CreateDynamicObject(obbj,ox,oy,oz,0.0000000,0.0000000,0.0000);
         hFile = fopen(\"objectek.ini\", io_append);
         fwrite(hFile, entry);
         fclose(hFile);
                }
}
return 1;
}
« Utoljára szerkesztve: 2013. december 31. - 00:11:12 írta kiakovi »

Nem elérhető ZoleBB

  • 480
  • ZoleBB
    • Profil megtekintése
Egyszerû object lerakó
« Válasz #1 Dátum: 2013. december 12. - 22:06:29 »
0 Show voters
Tesztelve is van ?

Egyszerû object lerakó
« Válasz #2 Dátum: 2013. december 12. - 22:46:52 »
0 Show voters

Tesztelve is van ?
 
[/quote]
 
Remélem ti is olyan jó hasznát veszitek, mint én :)[/quote]

Egyszerû object lerakó
« Válasz #3 Dátum: 2013. december 13. - 13:18:12 »
0 Show voters
ERROR os XDD  :@ :@ :@ :@ :@ :@

Egyszerû object lerakó
« Válasz #4 Dátum: 2013. december 13. - 13:59:04 »
0 Show voters
Mit ír ki? Mert nálam perfektül ment ebben az alakban.

Nem elérhető BoSS

  • 816
    • Profil megtekintése
Egyszerû object lerakó
« Válasz #5 Dátum: 2013. december 23. - 12:26:31 »
0 Show voters
Nem rossz,de mozgatni lehetne még jobb lenne :D

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
Egyszerû object lerakó
« Válasz #6 Dátum: 2013. december 30. - 12:50:43 »
0 Show voters
Szia. Nemtudom hogy észrevetted-e, vagy csak direkt van úgy megcsinálva hogyha az objectek.ini fájl nem található a scriptfiles mappában, akkor létrehozza a fájlt, majd letesz egy 818-as objectet.
 
if(!dini_Exists(\"objectek.ini\"))
{
   dini_Create(\"objectek.ini\");
   format(entry, sizeof(entry), \"CreateDynamicObject(%i,%f,%f,%f,0.0000000,0.0000000,0.0000);\\r\\n\",obbj, ox,oy,oz);
   CreateDynamicObject(818,ox,oy,oz,0.0000000,0.0000000,0.0000);
   hFile = fopen(\"objectek.ini\", io_append);
   fwrite(hFile, entry);
   fclose(hFile);
}

 
Tehát ez a 818-as object mit keress ott ha mi azt akarjuk hogy a beírt objectid-t rakja le?  :doubt:
 

Szükséges hozzá a sscanf2 és a ZCMD include, amit meg lehet találni a fórumon.
 
[/quote]
+streamer, és a dini :D

Nem elérhető Lewis

  • 139
    • Profil megtekintése
Egyszerû object lerakó
« Válasz #7 Dátum: 2013. december 30. - 13:25:28 »
0 Show voters
error

Egyszerû object lerakó
« Válasz #8 Dátum: 2013. december 31. - 00:09:39 »
0 Show voters

Szia. Nemtudom hogy észrevetted-e, vagy csak direkt van úgy megcsinálva hogyha az objectek.ini fájl nem található a scriptfiles mappában, akkor létrehozza a fájlt, majd letesz egy 818-as objectet.
 
if(!dini_Exists(\"objectek.ini\"))
{
   dini_Create(\"objectek.ini\");
   format(entry, sizeof(entry), \"CreateDynamicObject(%i,%f,%f,%f,0.0000000,0.0000000,0.0000);\\r\\n\",obbj, ox,oy,oz);
   CreateDynamicObject(818,ox,oy,oz,0.0000000,0.0000000,0.0000);
   hFile = fopen(\"objectek.ini\", io_append);
   fwrite(hFile, entry);
   fclose(hFile);
}

 
Tehát ez a 818-as object mit keress ott ha mi azt akarjuk hogy a beírt objectid-t rakja le?  :doubt:
 

Szükséges hozzá a sscanf2 és a ZCMD include, amit meg lehet találni a fórumon.
 
[/quote]
+streamer, és a dini :D
 
[/quote]
Köszi, hogy szóltál :D Javítom ;) a 818-as object azért van benne, mert eleinte csak addig jutott el az agyam, hogy kifejezetten  1 féle objectet tegyek le, így véletlen benne is maradt :D (átírkáltam az id-t) aztán megcsináltam ilyen tetszõlegesre :D

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal