Advertisement
ZumeZero

[Filterscript] Dynamic messages [Y_INI]

Jul 22nd, 2013
974
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 2.67 KB | None | 0 0
  1. #include <a_samp>
  2. #include <YSI\y_ini>
  3.  
  4. enum EnumMessages
  5. {
  6.     Messages_TD[128],
  7. };
  8. new MessagesData[10][EnumMessages],
  9.     Text:TD_RandomMessages[2],
  10.     LastFrame;
  11.  
  12. public OnFilterScriptExit()
  13. {
  14.     SaveMessages();
  15.     return 1;
  16. }
  17.  
  18. public OnFilterScriptInit()
  19. {
  20.     LastFrame = 0;
  21.     INI_Load("MensajesRandom.ini");
  22.  
  23.     TD_RandomMessages[0] =
  24.     TextDrawCreate(660.000000, 430.000000, "_");
  25.     TextDrawBackgroundColor (TD_RandomMessages[0], 255);
  26.     TextDrawFont            (TD_RandomMessages[0], 1);
  27.     TextDrawLetterSize      (TD_RandomMessages[0], 0.700000, 3.000000);
  28.     TextDrawColor           (TD_RandomMessages[0], -1);
  29.     TextDrawSetOutline      (TD_RandomMessages[0], 0);
  30.     TextDrawSetProportional (TD_RandomMessages[0], 1);
  31.     TextDrawSetShadow       (TD_RandomMessages[0], 1);
  32.     TextDrawUseBox          (TD_RandomMessages[0], 1);
  33.     TextDrawBoxColor        (TD_RandomMessages[0], 117);
  34.     TextDrawTextSize        (TD_RandomMessages[0], -30.000000, 0.000000);
  35.     TextDrawSetSelectable   (TD_RandomMessages[0], 0);
  36.  
  37.     TD_RandomMessages[1] =
  38.     TextDrawCreate(144.000000, 434.000000, "Lorem lalalala...");
  39.     TextDrawBackgroundColor (TD_RandomMessages[1], 255);
  40.     TextDrawFont            (TD_RandomMessages[1], 2);
  41.     TextDrawLetterSize      (TD_RandomMessages[1], 0.220000, 1.100000);
  42.     TextDrawColor           (TD_RandomMessages[1], -1);
  43.     TextDrawSetOutline      (TD_RandomMessages[1], 0);
  44.     TextDrawSetProportional (TD_RandomMessages[1], 1);
  45.     TextDrawSetShadow       (TD_RandomMessages[1], 1);
  46.     TextDrawSetSelectable   (TD_RandomMessages[1], 0);
  47.     SetTimer("ChangeMessage",6000,1);
  48.     return 1;
  49. }
  50.  
  51. public OnPlayerDisconnect(playerid, reason){
  52.     for(new m = 0; m < 2; m++)
  53.     {
  54.         TextDrawHideForPlayer(playerid, TD_RandomMessages[m]);
  55.     }
  56.     return 1;
  57. }
  58.  
  59. forward ChangeMessage();
  60. public ChangeMessage()
  61. {
  62.     switch(LastFrame)
  63.     {
  64.         case 0 .. 9: TextDrawSetString(TD_RandomMessages[1], MessagesData[LastFrame][Messages_TD]);
  65.         default:
  66.         {
  67.             LastFrame = 0;
  68.             return TextDrawSetString(TD_RandomMessages[1], MessagesData[LastFrame][Messages_TD]);
  69.         }
  70.     }
  71.     if(LastFrame != 9) LastFrame++;
  72.     else LastFrame = 0;
  73.     return 1;
  74. }
  75.  
  76. INI:MensajesRandom[](name[], value[])
  77. {
  78.     new
  79.         mStr[30];
  80.        
  81.     for(new m = 0; m < 10; m++)
  82.     {
  83.         format(mStr,sizeof(mStr), "Message_%d", m); INI_String(mStr, MessagesData[m][Messages_TD], 128);
  84.     }
  85.     return 0;
  86. }
  87.  
  88. stock SaveMessages()
  89. {
  90.     new
  91.         mStr[30],
  92.         INI:ini = INI_Open("MensajesRandom.ini");
  93.  
  94.     for(new m = 0; m < 10; m++)
  95.     {
  96.         format(mStr,sizeof(mStr), "Message_%d", m); INI_WriteString(ini, mStr, MessagesData[m][Messages_TD]);
  97.     }
  98.     INI_Close(ini);
  99. }
  100.  
  101. public OnPlayerSpawn(playerid)
  102. {
  103.     for(new m = 0; m < 2; m++)
  104.     {
  105.         TextDrawShowForPlayer(playerid, TD_RandomMessages[m]);
  106.     }
  107.     return 1;
  108. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement