Szerző Téma: Skin választás  (Megtekintve 915 alkalommal)

Skin választás
« Dátum: 2014. október 02. - 19:25:03 »
0 Show voters
Azt szeretném kérdezni,hogy azt hogyan lehetne megoldani,hogy egy dialogos regi rendszerben regisztráláskor adja elõ az alap skin választást,és bejelendkezésnél ne,hanem a mentett skint,koordinátával lépjen be?Ha beteszem a bejelendkezés dialoghoz a SpawnPlayert,akkor bejelendkezéskor,müködik,de regisztráláskor letesz egy hejre 281-es skinnel,és anyi,elõ sem adja a skin választást?:(Köszönöm elõre is!!!
« Utoljára szerkesztve: 2014. október 19. - 16:35:45 írta Flash »

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Skin választás
« Válasz #1 Dátum: 2014. október 03. - 12:35:29 »
0 Show voters
Az elõzõ témádból nézve:
Elõször is ezt a sort vedd ki a bejelentkezésnél:
 
SetPlayerSkin(playerid,JatekosInfo[playerid][pSkin]);

 
Majd:
 
SendClientMessage(playerid,KEK,\"Sikeresen Bejelentkeztél!\");

 
A SCM alá (lásd 1 sorral feljebb) vagy akár felé írd ezt:
 
SpawnPlayer(playerid);

 
Majd az OnPlayerSpawn alá rakd ezt:
 
SetPlayerSkin(playerid,JatekosInfo[playerid][pSkin]);

Skin választás
« Válasz #2 Dátum: 2014. október 03. - 18:31:53 »
0 Show voters
Bocsi,de most errör a rendszerröl beszélek:
 
#include <a_samp>
#include <dini>
#include <dudb>
#define regisztracio 0
#define bejelentkezes 1
#define HIBA 0xFF0000FF
new nev[MAX_PLAYER_NAME];
new Belepve[MAX_PLAYERS];
enum JatekosAdatok
{
Penz,
Skin,
Float:X,
Float:Y,
Float:Z,
}
new JatekosInfo[MAX_PLAYERS][JatekosAdatok];
 
main()
{
print(\"\\n----------------------------------\");
print(\" Blank Gamemode by your name here\");
print(\"----------------------------------\\n\");
}
 
public OnGameModeInit()
{
// Don\'t use these lines if it\'s a filterscript
SetGameModeText(\"Blank Script\");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
new file[256];
GetPlayerName(playerid,nev,sizeof(nev));
format(file,sizeof(file),\"/Karakterek/%s.ini\",nev);
new string[256];
if(!fexist(file))
{
format(string, sizeof string, \"Üdv %s! \\nKérjük regisztrálj! \\n\\nAdd meg a kívánt jelszavadat!\", nev);
ShowPlayerDialog(playerid, regisztracio, DIALOG_STYLE_INPUT, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
}
if(fexist(file))
{
format(string, sizeof string, \"Üdv %s! \\nKérjük jelentkezz be! \\n\\nÍrd be a jelszavadat!\", nev);
ShowPlayerDialog(playerid, bejelentkezes, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Bejelentkezés\", \"Kilépés\");
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new file[256];
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
    JatekosInfo[playerid][X] = x;
    JatekosInfo[playerid][Y] = y;
    JatekosInfo[playerid][Z] = z;
GetPlayerName(playerid,nev,sizeof(nev));
format(file,sizeof(file),\"/Karakterek/%s.ini\",nev);
if(fexist(file) && Belepve[playerid]== 1)
{
    dini_IntSet(file,\"Penz\",GetPlayerMoney(playerid));
    dini_IntSet(file,\"Skin\",GetPlayerSkin(playerid));
    dini_FloatSet(file,\"X\",JatekosInfo[playerid][X]);
    dini_FloatSet(file,\"Y\",JatekosInfo[playerid][Y]);
    dini_FloatSet(file,\"Z\",JatekosInfo[playerid][Z]);
}
Belepve[playerid]=0;
JatekosInfo[playerid][Penz]= 0;
JatekosInfo[playerid][skin]= 0;
printf(\"%s kilépett.\",nev);
return 1;
}
public OnPlayerSpawn(playerid)
{
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnVehicleSpawn(vehicleid)
{
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
return 1;
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/mycommand\", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
return 1;
}
public OnVehicleMod(playerid, vehicleid, componentid)
{
return 1;
}
public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
return 1;
}
public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
return 1;
}
public OnRconLoginAttempt(ip[], password[], success)
{
return 1;
}
public OnPlayerUpdate(playerid)
{
return 1;
}
public OnPlayerStreamIn(playerid, forplayerid)
{
return 1;
}
public OnPlayerStreamOut(playerid, forplayerid)
{
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
return 1;
}
public OnVehicleStreamOut(vehicleid, forplayerid)
{
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if (dialogid == regisztracio)
{
if(response)
{
   new file[256];
   new string[256];
   GetPlayerName(playerid, nev, sizeof(nev));
   if(strlen(inputtext) == 0)
   {
      format(string, sizeof string, \"Üdv %s! \\nKérjük regisztrálj! \\n\\nAdd meg a kívánt jelszavadat!\", nev);
      ShowPlayerDialog(playerid, regisztracio, DIALOG_STYLE_INPUT, \"Regisztráció\", string, \"Regisztráció\", \"Kilépés\");
      return 0;
   }
   format(file,sizeof(file),\"/Karakterek/%s.ini\",nev);
   if(!fexist(file))
   {
      dini_Create(file);
      dini_IntSet(file, \"Antibug\",0);
      dini_IntSet(file, \"Jelszo\",udb_hash(inputtext));
      dini_IntSet(file,\"Penz\",0);
      format(string, sizeof string, \"Üdv %s! \\nRegisztrálva vagy! \\n\\nÍrd be a jelszavadat!\", nev);
      ShowPlayerDialog(playerid, bejelentkezes, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Belépés\", \"Kilépés\");
      PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
      printf(\"%s regisztrált a szerverre!\",nev);
   }
   else
   {
      format(string, sizeof string, \"Üdv %s! \\nRegisztrálva vagy! \\n\\nÍrd be a jelszavadat!\", nev);
      ShowPlayerDialog(playerid, bejelentkezes, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Belépés\", \"Kilépés\");
   }
}
}
if(dialogid == bejelentkezes)
{
if(response)
{
    new file[256];
    new string[256];
            GetPlayerName(playerid, nev, sizeof(nev));
   if(strlen(inputtext) == 0)
   {
       format(string, sizeof string, \"Bejelentkezés \\n\\nÜdv %s! \\nRegisztrálva vagy! \\n\\nÍrd be a jelszavadat!\", nev);
      ShowPlayerDialog(playerid, bejelentkezes, DIALOG_STYLE_INPUT, \"Bejelentkezés\", string, \"Belépés\", \"Kilépés\");
      return 0;
   }
   format(file,sizeof(file),\"/Karakterek/%s.ini\",nev);
   if(fexist(file))
   {
             new jelszo = dini_Int(file, \"Jelszo\");
          if(udb_hash(inputtext) == jelszo)
      {
         Belepve[playerid] = 1;
         ResetPlayerMoney(playerid);
         JatekosInfo[playerid][Penz] = dini_Int(file,\"Penz\");
         JatekosInfo[playerid][skin] = dini_Int(file,\"Skin\");
         JatekosInfo[playerid][X] = dini_Int(file, \"X\");
         JatekosInfo[playerid][Y] = dini_Int(file, \"Y\");
         JatekosInfo[playerid][Z] = dini_Int(file, \"Z\");
         GivePlayerMoney(playerid,JatekosInfo[playerid][Penz]);
         SetPlayerSkin(playerid,JatekosInfo[playerid][skin]);
         SetSpawnInfo(playerid,JatekosInfo[playerid][Penz],JatekosInfo[playerid][skin],JatekosInfo[playerid][X],JatekosInfo[playerid][Y],JatekosInfo[playerid][Z],0,0,0,0,0,0,0);
         SpawnPlayer(playerid);
      }
               else
      {
          SendClientMessage(playerid, HIBA, \"Rossz jelszó!\");
           printf(\"%s bejelentkezése sikertelen volt.\", nev);
           Kick(playerid);
      }
   }
}
else
{
    Kick(playerid);
}
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Skin választás
« Válasz #3 Dátum: 2014. október 08. - 22:05:15 »
0 Show voters
Ezt a sort:
 
SetPlayerSkin(playerid,JatekosInfo[playerid][skin]);

 
kiveszed a bejelentkezõ dialog alól és az OnPlayerSpawn alá teszed. Csak gondolkozz logikusan!

Skin választás
« Válasz #4 Dátum: 2014. október 09. - 18:07:40 »
0 Show voters
Köszi,igy jo lessz,de most van a pénz még mindig nem tölti be :(,az elözö topikban amit irtam ?

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Skin választás
« Válasz #5 Dátum: 2014. október 09. - 18:19:14 »
0 Show voters
Ott is már leírtam
 
Idézetet írta: Flash date=1412332150\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"50840\" data-ipsquote-contentclass=\"forums_Topic
Nem nagyon foglalkozok dinivel, de szerintem az a hibája hogy spawnolás elött adod a játékosnak a pénzt bejelentkezés után.
Helyesen így csináld:
Töröld a \'Sikeresen bejelentkeztél\' felöl ezt:
 
GivePlayerMoney(playerid,JatekosInfo[playerid][pPenz]);

 
és helyére rakd be ezt:
 
      SetPVarInt(playerid, \"NowLoogedIn\", 1);

 
És az OnPlayerSpawn alá rakd ezt:
 
   if(GetPVarInt(playerid, \"NowLoogedIn\")) {
SetPVarInt(playerid, \"NowLoogedIn\", 0);
GivePlayerMoney(playerid,JatekosInfo[playerid][pPenz]);
}

 


Skin választás
« Válasz #6 Dátum: 2014. október 09. - 18:21:07 »
0 Show voters
ugy megrpobáltam azt is de sajnos nem müködik egyáltalán :(

Skin választás
« Válasz #7 Dátum: 2014. október 09. - 21:35:46 »
0 Show voters
ellenörzöd, hogy ha most reggelt, akkor beadja neki, ha nem, akkor spec 1, spawn, és spec 0

Nem elérhető ZyZu.

  • Globális moderátor
  • 8939
  • my turbo diesel forum
  • Discord: ZyZu.
    • Profil megtekintése
Skin választás
« Válasz #8 Dátum: 2014. október 14. - 06:58:27 »
0 Show voters
Milyen skin választót használsz? Sima dialogosan próbálod betölteni vagy mSelection nevû szkriptel?

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Skin választás
« Válasz #9 Dátum: 2014. október 18. - 19:11:43 »
0 Show voters
[gmod]Megkérném a kedves témanyitót, hogy ne hanyagolja el a témát ha már megnyitotta![/gmod]

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal