Question

Как правильно поставить ранг и фракцию?

format(dtext,sizeof(dtext),"{FFFFFF}\nИмя: %s\nФракция: %d\nРанг во фракции: %d",PLAYER_DATA[id][data_NAME],PLAYER_DATA[id][data_MEMBER],PLAYER_DATA[id][data_RANK]);

Имею ввиду %d, %s и т.д. прошу объяснить :)

Share this post


Link to post

11 answers to this question

  • 0

@Remmi_Feed ко всем new: 

Спойлер

static const nameFraction[?][32] = { // вместо вопросительного знака кол-во фракций (строк с названиями)
	{"Фракция1"},
	{"Фракция2"}
	//и т.д.
};

 

Использовать при выводе: 

format(..., "%s", nameFraction[number_fraction]);
// где number_fraction - номер фракции, название которой получаем

Если подставить данный "макет" в ваш код, получим: 

format(dtext,sizeof(dtext),"{FFFFFF}\nИмя: %s\nФракция: %s\nРанг во фракции: %d",PLAYER_DATA[id][data_NAME],nameFraction[PLAYER_DATA[id][data_MEMBER]],PLAYER_DATA[id][data_RANK]);

Если с рангами хотите сделать также, то делайте по аналогии. 

Share this post


Link to post
  • 0

@Remmi_Feed все верно подставлено. Будет выводится номер фракции и номер ранга, ну и имя в самом начале. 

Share this post


Link to post
  • 0

@DEST у меня вместо ранга и фракции "каракули". Я подумал что что-то не так сделал. В чем может быть проблема?

@Remmi_Feed имею ввиду если делать не цифрами а буквами т.е. %s

Share this post


Link to post
  • 0

@Remmi_Feed какие каракули? Что конкретно отображается? Скиньте полный код вывода. 

Share this post


Link to post
  • 0

@DEST 

else if(GetPVarInt(playerid, "yesno_showud") == 1)
			{
				new dtext[256];
				format(dtext,sizeof(dtext),"{FFFFFF}\nИмя: %s\nФракция: %s\nРанг во фракции: %s",PLAYER_DATA[id][data_NAME],PLAYER_DATA[id][data_MEMBER],PLAYER_DATA[id][data_RANK]);
				ShowPlayerDialogFix(playerid,dialog_OK, DIALOG_STYLE_MSGBOX, "{FFCC00}Удостоверение", dtext, "Закрыть", "");
				SetPlayerChatBubble(playerid, "просматривает Удостоверение", 0xFF66CCFF, 20.0, 4000);
				DeletePVar(playerid, "yesno_showud");
	   			DeletePVar(playerid, "yesno_playerid");
	   			DeletePVar(playerid, "yesno");
			    return true;
			}
Спойлер

eIH1dmS1eic.thumb.jpg.6a8ed6c3a35c8441a55d3bd2468dda1a.jpg

 

Share this post


Link to post
  • 0

после new dtext[256]; добавить: 

printf("%d - member, %d - rank", PLAYER_DATA[playerid][data_MEMBER], PLAYER_DATA[playerid][data_RANK]);

После вызовите в игре данный диалог и скиньте логи. 

Share this post


Link to post
  • 0

@DEST Если человек не стоит на лидерке:

Спойлер


----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3e, (C)2005-2012 SA-MP Team

[21:17:50] filterscripts = ""  (string)
[21:17:50] 
[21:17:50] Server Plugins
[21:17:50] --------------
[21:17:50]  Loading plugin: crashdetect.dll
[21:17:50]   CrashDetect v4.15.1 is OK.
[21:17:50]   Loaded.
[21:17:50]  Loading plugin: mysql.dll
[21:17:50]  >> plugin.mysql: R39-3 successfully loaded.
[21:17:50]   Loaded.
[21:17:50]  Loading plugin: sscanf.dll
[21:17:50] 

[21:17:50]  ===============================

[21:17:50]       sscanf plugin loaded.     

[21:17:50]          Version:  2.8.1        

[21:17:50]    (c) 2012 Alex "Y_Less" Cole  

[21:17:50]  ===============================

[21:17:50]   Loaded.
[21:17:50]  Loading plugin: streamer.dll
[21:17:50] 

*** Streamer Plugin v2.7.8 by Incognito loaded ***

[21:17:50]   Loaded.
[21:17:50]  Loading plugin: iTD.dll
[21:17:50] 
* iTD Plugin loaded. (Support for textdraw editor mouse/keyboard)

[21:17:50]   Loaded.
[21:17:50]  Loaded 5 plugins.

[21:17:50] 
[21:17:50] Filterscripts
[21:17:50] ---------------
[21:17:50]   Loaded 0 filterscripts.

[21:17:50] OnGameo
[21:17:50] Server password has been removed.
[21:17:51] MySQL connection: OK
[21:17:51] 
------------------------------
[21:17:51]  Start date: 24.06.2016
[21:17:51] ------------------------------
[21:17:51] Number of vehicle models: 23
[21:17:52] [serv_log]  Load warehouse. Time: 0 ms.
[21:17:52] [serv_log]  Load job business. Load: 4 b. Time: 1 ms.
[21:17:52] [serv_log]  Load auto business. Load: 2 b. Time: 0 ms.
[21:17:53] [serv_log]  Load kvartiry. Load: 461 b. Time: 135 ms.
[21:17:53] [serv_log]  Load houses. Load: 115 h. Time: 9 ms.
[21:17:53] [serv_log]  Load business. Load: 42 b. Time: 3 ms.
[21:17:53] Incoming connection: 127.0.0.1:63636
[21:17:53] [join] Remmi_Johnson has joined the server (0:127.0.0.1)
[21:17:57] Warning: PlayerDialogResponse PlayerId: 0 dialog ID doesn't match last sent dialog ID
[21:18:10] 0 - member, 0 - rank
[21:18:14] [part] Remmi_Johnson has left the server (0:1)

 

Если человек стоит на лидерке:

Спойлер


----------
Loaded log file: "server_log.txt".
----------

SA-MP Dedicated Server
----------------------
v0.3e, (C)2005-2012 SA-MP Team

[21:18:48] filterscripts = ""  (string)
[21:18:48] 
[21:18:48] Server Plugins
[21:18:48] --------------
[21:18:48]  Loading plugin: crashdetect.dll
[21:18:48]   CrashDetect v4.15.1 is OK.
[21:18:48]   Loaded.
[21:18:48]  Loading plugin: mysql.dll
[21:18:48]  >> plugin.mysql: R39-3 successfully loaded.
[21:18:48]   Loaded.
[21:18:48]  Loading plugin: sscanf.dll
[21:18:48] 

[21:18:48]  ===============================

[21:18:48]       sscanf plugin loaded.     

[21:18:48]          Version:  2.8.1        

[21:18:48]    (c) 2012 Alex "Y_Less" Cole  

[21:18:48]  ===============================

[21:18:48]   Loaded.
[21:18:48]  Loading plugin: streamer.dll
[21:18:48] 

*** Streamer Plugin v2.7.8 by Incognito loaded ***

[21:18:48]   Loaded.
[21:18:48]  Loading plugin: iTD.dll
[21:18:48] 
* iTD Plugin loaded. (Support for textdraw editor mouse/keyboard)

[21:18:48]   Loaded.
[21:18:48]  Loaded 5 plugins.

[21:18:48] 
[21:18:48] Filterscripts
[21:18:48] ---------------
[21:18:48]   Loaded 0 filterscripts.

[21:18:48] OnGameo
[21:18:48] Server password has been removed.
[21:18:49] MySQL connection: OK
[21:18:49] 
------------------------------
[21:18:49]  Start date: 24.06.2016
[21:18:49] ------------------------------
[21:18:49] Number of vehicle models: 23
[21:18:50] [serv_log]  Load warehouse. Time: 0 ms.
[21:18:50] [serv_log]  Load job business. Load: 4 b. Time: 1 ms.
[21:18:50] [serv_log]  Load auto business. Load: 2 b. Time: 0 ms.
[21:18:50] [serv_log]  Load kvartiry. Load: 461 b. Time: 113 ms.
[21:18:50] [serv_log]  Load houses. Load: 115 h. Time: 5 ms.
[21:18:50] [serv_log]  Load business. Load: 42 b. Time: 3 ms.
[21:19:10] Incoming connection: 127.0.0.1:51812
[21:19:10] [join] Remmi_Johnson has joined the server (0:127.0.0.1)
[21:19:49] 1 - member, 7 - rank
[21:19:54] [part] Remmi_Johnson has left the server (0:1)

 

 

Edited by Remmi_Feed

Share this post


Link to post
  • 0

@Remmi_Feed вы в самом первом своем посте скинули верную строку, а в посте №5 код неправильный. Там используется числовое значение, значит должен быть %d, а не %s

Share this post


Link to post
  • 0

@DEST как тогда сделать чтобы писалась фракция и ранг?

Share this post


Link to post
  • 0

@Remmi_Feed самый первый пост в теме является правильным вариантом. 

Share this post


Link to post
  • 0

@DEST мне нужно чтобы показывало название фракции а не ее число

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • kekkomomek1941
      By kekkomomek1941
      Всем привет, вот ошибки, понятия не имею как их исправить, кто может - помогите пожалуйста
      arizona.pwn(92829) : error 001: expected token: ";", but found ":"
      arizona.pwn(92829) : error 029: invalid expression, assumed zero
      arizona.pwn(92799) : error 002: only a single statement (or expression) can follow each "case"
      arizona.pwn(92829) : error 014: invalid statement; not in switch
      arizona.pwn(92829) : fatal error 107: too many error messages on one line
      Вот все строчки с ошибками
       
       
    • KenzoSam
      By KenzoSam
      Всем привет,писал код на инвентарь,появились ошибки которые я незнаю как убрать.
      Компилятор:
      C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(39) : warning 201: redefinition of constant/macro (symbol "FOREACH_I_Bot") C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(40) : warning 201: redefinition of constant/macro (symbol "FOREACH_I_Character") C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\brnotification.inc(24) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customhud.inc(83) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customhud.inc(327) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customhud.inc(342) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customhud.inc(398) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customtune.inc(211) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customtune.inc(272) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\pawno\include\customtune.inc(721) : warning 234: function is deprecated (symbol "BS_Send") Use PR_SendPacket instead C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(119) : warning 201: redefinition of constant/macro (symbol "M_DIALOG_DialogForPlayer") C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(8763) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(8773) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(9869) : symbol is assigned a value that is never used: "carid" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(10671) : symbol is assigned a value that is never used: "color2" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(10670) : symbol is assigned a value that is never used: "color1" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(10818) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(10816) : symbol is assigned a value that is never used: "job_car" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(13444) : symbol is assigned a value that is never used: "carid" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(13461) : symbol is assigned a value that is never used: "s" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(13946) : symbol is assigned a value that is never used: "randomize" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(14713) : warning 216: nested comment C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25414) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25410) : symbol is assigned a value that is never used: "action_id" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25409) : symbol is assigned a value that is never used: "action_type" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25597) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25595) : symbol is assigned a value that is never used: "action_id" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(25594) : symbol is assigned a value that is never used: "action_type" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30735) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30755) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30768) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30824) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30822) : symbol is assigned a value that is never used: "fmt_text" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30850) : loose indentation C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(30848) : symbol is assigned a value that is never used: "fmt_text" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(34053) : error 017: undefined symbol "playertextid" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(34053) : warning 215: expression has no effect C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(34053) : error 001: expected token: ";", but found "]" C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(34053) : error 029: invalid expression, assumed zero C:\Users\asus\OneDrive\Ðàáî÷èé ñòîë\byreytiz\gamemodes\byreytiz.pwn(34053) : fatal error 107: too many error messages on one line Compilation aborted. Pawn compiler 3.2.3664          Copyright (c) 1997-2016, ITB CompuPhase 4 Errors. Код(только ошибок):
      public OnPlayerClickTextDraw(playerid, Text:clickedid) {     for(new i=0; i < 97; i++)     {         if(playertextid == inv_TD[playerid][i])//34053 на эту стройку пищит         {             if(PlayerInfo[playerid][Inv][i] == 1649)             {                 if(GetPVarInt(playerid, "ClickInv") == -1)                 {                     new id_inv = GetPVarInt(playerid, "ClickInv");                     PlayerTextDrawSetPriviewModel(playerid, inv_TD[playerid][id_inv], 1649);                     PlayerTextDrawSetPriviewModel(playerid, inv_TD[playerid][i], PlayerInfo[playerid][Inv][i]);                     PlayerInfo[playerid][Inv][i] = PlayerInfo[playerid][Inv][id_inv];                     PlayerInfo[playerid][Inv][id_inv] = 1649;                     SetRotInv(playerid, i, PlayerInfo[playerid][Inv][i];                     SetRotInv(playerid, id_td, PlayerInfo[playerid][Inv][id_inv];                     UpdateInv(playerid, id_inv, 1);                     UpdateInv(playerid, i, 1);                     SetPVarInt(playerid, "ClickInv", -1);                 }             }             else             {                 if(GetPVarInt(playerid, "ClickInv") == -1)                 {                     SetPVarInt(playerid, "ClickInv", i);                     UpdateInv(playerid, i, 2);                 }             }                 else                 {                     if(GetPVarInt(playerid, "ClickInv") == i)                     {                         SetPVarInt(playerid, "ClickInv", -1);                         UpdateInv(playerid, i, 1);                     }                 }         }     }     if(playertextid == InvText[playerid[4])     {         if(GetPVarInt(playerid, "ClickInv") != -1)         {         new id_inv = GetPVarInt(playerid, "ClickInv");         PlayerInfo[playerid][Inv][id_inv] = 1649;         PlayerTextDrawSetPriviewModel(playerid, inv_TD[playerid][id_inv], PlayerInfo[playerid][Inv][id_inv];         SetRotInv(playerid, id_inv, PlayerInfo[playerid][Inv][id_inv]);         UpdateInv(playerid, id_inv, 1);         SetPVarInt(playerid, "ClickInv", -1);         SendClientMessage(playerid, 0xFFFFFFF, "[Èíâåíòàðü]: Äàííûé ïðåäìåò áûë óñïåøíî óäàëåí!");     }     }      Помогите плиз,буду благодарен