Szerző Téma: IG Karakterválasztó készítése (Kamera)  (Megtekintve 3366 alkalommal)

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Dátum: 2015. február 04. - 17:05:55 »
+11 Show voters
Üdvözlök mindenkit!
Elhoztam egy szerényebb szkriptem nektek, mely könnyebbé teszi a karakter választó helység kiválasztását illetve elkészítését!
Ez a kis FS nem kizárólag skin választó helység beállítására lett kitalálva, hisz ez kreativitás kérdése, mint például egy kezdödő minigame vagy hasonló dolgokhoz..
Megkönnyítettem a szkriptet használó emberkének a dolgot, hiszen azt is megírtam, hogy .pwn fájlba le tudja menteni az elkészített kamerát és pozíciót, illetve .txt formában is lementhető!
Ráadásul készítés közben le tudod tesztelni, hogy hogyan készítetted el a kamera és a saját pozíciódat! (Forgási szöget is feltétlenül ment)
Tudom, hogy van modernebb megoldás is az enyémnél, de lehet készítek ebből egy verizó 2-t.
Információk:
 
  • Készítő: Flash

  • Sorok száma: 171

  • Elkészítési idő: 1 óra (teszteléssel)

  • Felhasznált includeok/pluginok: a_samp, sscanf, zcmd

  • Parancsok: /camera


 

\"camera-128.png\"
[hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-061_www.kepfeltoltes.hu_.png[/hs]   [hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-063_www.kepfeltoltes.hu_.png[/hs]   [hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-064_www.kepfeltoltes.hu_.png[/hs]
[hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-065_www.kepfeltoltes.hu_.png[/hs]   [hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-066_www.kepfeltoltes.hu_.png[/hs]   [hs width=150 height=150]http://kepfeltoltes.hu/150204/sa-mp-067_www.kepfeltoltes.hu_.png[/hs]
 





\"folder_download.png\"
 
or
 
#define FILTERSCRIPT
#include a_samp
#include sscanf2
#include zcmd
#define CameraMode(%0)       GetPVarInt(%0, \"cameramode\")
#define Error(%0,%1)         SendClientMessage(%0, 0xff6666ff, %1)
new
Float:p[4],
str[128],
string[1024],
bool:iscamera=false
;
enum { DIALOG_CAMERAMENU=10, DIALOG_CAMERAMENU2 }
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) {
if(iscamera == true) {
if(newkeys & KEY_YES && CameraMode(playerid) == 1) {
   GetPlayerPos(playerid, p[0], p[1], p[2]);
   GetPlayerFacingAngle(playerid, p[3]);
   str[0] = EOS;
   format(str, sizeof(str), \"%f,%f,%f,%f\", p[0], p[1], p[2], p[3]);
   SetPVarString(playerid, \"playerpos\", str);
   SendClientMessage(playerid, -1, \"Camera :: Pozíció lementve.\");
   if(GetPVarInt(playerid, \"cameramode2\")) return ShowPlayerDialog(playerid, DIALOG_CAMERAMENU, 2, \"Menü\", \"Megszakítom az egész folyamatot\\nÚjra beállítom a játékos pozícióját\\nÚjra beállítom a kamera pozícióját\\nKész vagyok!\", \"Választ\", \"\");
   SendClientMessage(playerid, -1, \"Camera :: Most menj a kívánt kamera pozíciójához és nyomd meg az \'N\' gombot!\");
   SetPVarInt(playerid, \"cameramode\", 2);
   DeletePVar(playerid, \"cameramode2\");
}
if(newkeys & KEY_NO && CameraMode(playerid) == 2) {
   GetPlayerPos(playerid, p[0], p[1], p[2]);
   str[0] = EOS;
   format(str, sizeof(str), \"%f,%f,%f\", p[0], p[1], p[2]);
   SetPVarString(playerid, \"camerapos\", str);
   ShowPlayerDialog(playerid, DIALOG_CAMERAMENU, 2, \"Menü\", \"Megszakítom az egész folyamatot\\nÚjra beállítom a játékos pozícióját\\nÚjra beállítom a kamera pozícióját\\nKész vagyok!\", \"Választ\", \"\");
}
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
if(dialogid == DIALOG_CAMERAMENU) {
switch(listitem) {
   case 0: {
      Error(playerid, \"Megszakítottad a kamera készítését!\");
      DeletePVar(playerid, \"cameramode\");
      DeletePVar(playerid, \"cameramode2\");
      iscamera = false;
      SetCameraBehindPlayer(playerid);
   }
   case 1: {
      SetPVarInt(playerid, \"cameramode\", 1);
      SetPVarInt(playerid, \"cameramode2\", 1);
      SetCameraBehindPlayer(playerid);
      SendClientMessage(playerid, -1, \"Camera :: Menj arra a pozicíóra, mely a játékos tartózkodási helye legyen! Majd ha odaérték nyomd meg az \'Y\' betüt!\");
   }
   case 2: {
      SetPVarInt(playerid, \"cameramode\", 2);
      DeletePVar(playerid, \"cameramode2\");
      SetCameraBehindPlayer(playerid);
      SendClientMessage(playerid, -1, \"Camera :: Menj a kívánt kamera pozíciójához és nyomd meg az \'N\' gombot!\");
   }
   case 3: {
      DeletePVar(playerid, \"cameramode\");
      iscamera = false;
      ShowPlayerDialog(playerid, DIALOG_CAMERAMENU2, 2, \"Menü (2)\", \"Megnézem az eredményt\\nLementem egy .txt fájlba\\nLementem egy szkriptbe skinválasztóként\\nHagyom a picsába\", \"Választ\", \"\");
    }
}
}
if(dialogid == DIALOG_CAMERAMENU2) {
    new asd[128], asd2[128], Float:pp[3];
switch(listitem) {
   case 0: {
       GetPVarString(playerid, \"playerpos\", asd, sizeof(asd));
      sscanf(asd, \"p<,>ffff\", p[0], p[1], p[2], p[3]);
      SetPlayerPos(playerid, p[0], p[1], p[2]);
      SetPlayerFacingAngle(playerid, p[3]);
       GetPVarString(playerid, \"camerapos\", asd2, sizeof(asd2));
      sscanf(asd2, \"p<,>fff\", pp[0], pp[1], pp[2]);
      SetPlayerCameraPos(playerid, pp[0], pp[1], pp[2]);
      SetPlayerCameraLookAt(playerid, p[0], p[1], p[2]);
      TogglePlayerControllable(playerid, false);
      SendClientMessage(playerid, -1, \"Camera :: 5 másodperc múlva újra előjön a dialog!\");
      SetTimerEx(\"CameraDialog\", 5000, false, \"i\", playerid);
   }
   case 1: {
       GetPVarString(playerid, \"playerpos\", asd, sizeof(asd));
      sscanf(asd, \"p<,>ffff\", p[0], p[1], p[2], p[3]);
       GetPVarString(playerid, \"camerapos\", asd2, sizeof(asd2));
      sscanf(asd2, \"p<,>fff\", pp[0], pp[1], pp[2]);
       new File:file = fopen(\"camera.txt\", io_write);
      format(string, sizeof(string), \"Játékos pozíció: %f, %f, %f\\r\\n\", p[0], p[1], p[2]);
      fwrite(file, string);
      format(string, sizeof(string), \"Játékos forgási szöge: %f\\r\\n\", p[3]);
      fwrite(file, string);
      format(string, sizeof(string), \"Kamera pozíció: %f, %f, %f\\r\\n\", pp[0], pp[1], pp[2]);
      fwrite(file, string);
      fclose(file);
      DeletePVar(playerid, \"cameramode\");
      DeletePVar(playerid, \"cameramode2\");
      iscamera = false;
      SetCameraBehindPlayer(playerid);
      SendClientMessage(playerid, -1, \"Kamera lementve a \'scriptfiles\' mappába {00ff00}\'camera.txt\' {ffffff}néven\");
   }
   case 2: {
       GetPVarString(playerid, \"playerpos\", asd, sizeof(asd));
      sscanf(asd, \"p<,>ffff\", p[0], p[1], p[2], p[3]);
       GetPVarString(playerid, \"camerapos\", asd2, sizeof(asd2));
      sscanf(asd2, \"p<,>fff\", pp[0], pp[1], pp[2]);
       new File:file = fopen(\"camera.pwn\", io_write);
      fwrite(file, \"#include a_samp\\r\\n\");
      fwrite(file, \"public OnPlayerRequestClass(playerid, classid) {\\r\\n\");
      format(string, sizeof(string), \"   SetPlayerPos(playerid, %f, %f, %f);\\r\\n\", p[0], p[1], p[2]);
      fwrite(file, string);
      format(string, sizeof(string), \"   SetPlayerFacingAngle(playerid, %f);\\r\\n\", p[3]);
      fwrite(file, string);
      format(string, sizeof(string), \"   SetPlayerCameraPos(playerid, %f, %f, %f);\\r\\n\", pp[0], pp[1], pp[2]);
      fwrite(file, string);
      format(string, sizeof(string), \"   SetPlayerCameraLookAt(playerid, %f, %f, %f);\\r\\n\", p[0], p[1], p[2]);
      fwrite(file, string);
      fwrite(file, \"   return 1;\\r\\n\");
      fwrite(file, \"}\\r\\n\");
      fclose(file);
      DeletePVar(playerid, \"cameramode\");
      DeletePVar(playerid, \"cameramode2\");
      iscamera = false;
      SetCameraBehindPlayer(playerid);
      SendClientMessage(playerid, -1, \"Kamera lementve a \'scriptfiles\' mappába {00ff00}\'camera.pwn\' {ffffff}néven\");
   }
   case 3: {
      SendClientMessage(playerid, -1, \"Camera :: Hagytad a picsába ._.\");
      DeletePVar(playerid, \"cameramode\");
      DeletePVar(playerid, \"cameramode2\");
      iscamera = false;
      SetCameraBehindPlayer(playerid);
   }
}
}
return 1;
}
forward CameraDialog(playerid);
public CameraDialog(playerid) {
ShowPlayerDialog(playerid, DIALOG_CAMERAMENU2, 2, \"Menü (2)\", \"Megnézem az eredményt\\nLementem egy .txt fájlba\\nLementem egy szkriptbe skinválasztóként\\nHagyom a picsába\", \"Választ\", \"\");
TogglePlayerControllable(playerid, true);
return 1;
}
CMD:camera(playerid) {
if(iscamera == true) return Error(playerid, \"Már folyamatban van egy kamera készítése!\");
if(CameraMode(playerid)) return Error(playerid, \"Be van kapcsolva a kamera mód!\");
    iscamera = true;
SetPVarInt(playerid, \"cameramode\", 1);
DeletePVar(playerid, \"cameramode2\");
SendClientMessage(playerid, -1, \"Camera :: Menj arra a pozicíóra, mely a játékos tartózkodási helye legyen! Majd ha odaérték nyomd meg az \'Y\' betüt!\");
return 1;
}

 

Használjátok egészséggel!

Nem elérhető MotI

  • 185
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #1 Dátum: 2015. február 04. - 17:28:31 »
0 Show voters
Faxa lett.
((De én akkartam először ilyet feltenni ide xddd))

IG Karakterválasztó készítése (Kamera)
« Válasz #2 Dátum: 2015. február 04. - 17:38:45 »
+1 Show voters
Jóféle :p



Menü 2 -> utolsó pont  :laugh:

Nem elérhető HolE

IG Karakterválasztó készítése (Kamera)
« Válasz #3 Dátum: 2015. február 04. - 18:15:25 »
0 Show voters
K**va jó lett!!  :smokin:

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #4 Dátum: 2015. február 04. - 18:19:03 »
+1 Show voters
Köszönöm!

Nem elérhető ZSOLTI99

  • 1827
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #5 Dátum: 2015. február 04. - 18:25:45 »
0 Show voters
Nagyon jó lett grat hozzá!

IG Karakterválasztó készítése (Kamera)
« Válasz #6 Dátum: 2015. február 04. - 18:25:59 »
0 Show voters

SendClientMessage(playerid, -1, \"Camera :: Menj arra a pozicíóra, mely a játékos tartózkodási helye legyen! Majd ha odaérték nyomd meg az \'Y\' betüt!\");

 
[/quote]
Odaértél*

Nem elérhető Thomas_Jonson

  • 560
  • Thomas_Jonson
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #7 Dátum: 2015. február 04. - 19:04:26 »
0 Show voters
Jó lett. :)

IG Karakterválasztó készítése (Kamera)
« Válasz #8 Dátum: 2015. február 04. - 19:05:01 »
0 Show voters
Szerintem........... Flash-tól az ilyen
K**va jó lett!!  :smokin:[/quote] scriptek már alapok  :P

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #9 Dátum: 2015. február 04. - 19:25:34 »
+1 Show voters
Köszke :D  blackdog476 javítom azt a nagy bugot :)

Nem elérhető Cappsy

  • Adminisztrátor
  • 2754
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #10 Dátum: 2015. február 04. - 23:23:07 »
+1 Show voters
Jó lett :)



A szkriptben használt csúnya szó miatt 150% figyelmeztetésben, részesítelek! Továbbá add le a moderátori rangod!!
Egy sörért cserébe talán meggondolom magam!

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #11 Dátum: 2015. február 05. - 07:51:20 »
+1 Show voters
:D Köszi Csap..Cappsy :3

Nem elérhető Lofoli

  • 296
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #12 Dátum: 2015. február 05. - 11:25:25 »
0 Show voters
Ah Dejóó :D

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #13 Dátum: 2015. február 05. - 16:10:07 »
+1 Show voters
Idézetet írta: Caρρsy date=1423088587\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"52444\" data-ipsquote-contentclass=\"forums_Topic



A szkriptben használt csúnya szó miatt 150% figyelmeztetésben, részesítelek! Továbbá add le a moderátori rangod!!
Egy sörért cserébe talán meggondolom magam!
 

Na de Csapi... :$


Szép munka fless jár a szalmazsák! :*
« Utoljára szerkesztve: 2015. február 05. - 16:11:52 írta BoOy »

Nem elérhető Cappsy

  • Adminisztrátor
  • 2754
    • Profil megtekintése
IG Karakterválasztó készítése (Kamera)
« Válasz #14 Dátum: 2015. február 06. - 21:18:06 »
0 Show voters
Idézetet írta: BoOy date=1423149007\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"52444\" data-ipsquote-contentclass=\"forums_Topic





A szkriptben használt csúnya szó miatt 150% figyelmeztetésben, részesítelek! Továbbá add le a moderátori rangod!!
Egy sörért cserébe talán meggondolom magam!
 

Na de Csapi... :$


Szép munka fless jár a szalmazsák! :*
 
[/quote]
És kimondta baszki. Szabad ilyet csinálni?!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal