tde_tdinfo.inc 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283
  1. /*
  2. By adri1 15/05/2015
  3. For TDEditor 1.15+
  4. */
  5. enum TDE_TD_STRUCT
  6. {
  7. TDE_IsValidTextDraw,
  8. Text:TDE_TextDrawID,
  9. TDE_TextDrawText[800],
  10. Float:TDE_TextDrawPosX,
  11. Float:TDE_TextDrawPosY,
  12. Float:TDE_TextDrawLetterX,
  13. Float:TDE_TextDrawLetterY,
  14. Float:TDE_TextDrawTextX,
  15. Float:TDE_TextDrawTextY,
  16. TDE_TextDrawAlignmentV,
  17. TDE_TextDrawOutline,
  18. TDE_TextDrawShadow,
  19. TDE_TextDrawModelid,
  20. Float:TDE_TextDrawRotX,
  21. Float:TDE_TextDrawRotY,
  22. Float:TDE_TextDrawRotZ,
  23. Float:TDE_TextDrawZoom,
  24. TDE_TextDrawSelectable,
  25. TDE_TextDrawColorV,
  26. TDE_TextDrawBGColor,
  27. TDE_TextDrawUseBoxV,
  28. TDE_TextDrawBoxColorV,
  29. TDE_TextDrawVehCol1,
  30. TDE_TextDrawVehCol2,
  31. TDE_TextDrawFontV,
  32. TDE_Proportional
  33. };
  34. new TDE_TextDrawInfo[500][TDE_TD_STRUCT];
  35. TDE_TextDrawCreate(&Text:textdraw, Float:x, Float:y, text[])
  36. {
  37. textdraw = TextDrawCreate(x, y, text);
  38. TDE_TextDrawInfo[_:textdraw][TDE_IsValidTextDraw] = 1;
  39. TDE_TextDrawInfo[_:textdraw][TDE_TextDrawPosX] = x;
  40. TDE_TextDrawInfo[_:textdraw][TDE_TextDrawPosY] = y;
  41. format(TDE_TextDrawInfo[_:textdraw][TDE_TextDrawText], 800, "%s", text);
  42. return 1;
  43. }
  44. TDE_TextDrawLetterSize(Text:text, Float:x, Float:y)
  45. {
  46. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  47. TextDrawLetterSize(text, x, y);
  48. TDE_TextDrawInfo[_:text][TDE_TextDrawLetterX] = x;
  49. TDE_TextDrawInfo[_:text][TDE_TextDrawLetterY] = y;
  50. return 1;
  51. }
  52. TDE_TextDrawAlignment(Text:text, alignment)
  53. {
  54. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  55. TextDrawAlignment(text, alignment);
  56. TDE_TextDrawInfo[_:text][TDE_TextDrawAlignmentV] = alignment;
  57. return 1;
  58. }
  59. TDE_TextDrawColor(Text:text, color)
  60. {
  61. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  62. TextDrawColor(text, color);
  63. TDE_TextDrawInfo[_:text][TDE_TextDrawColorV] = color;
  64. return 1;
  65. }
  66. TDE_TextDrawUseBox(Text:text, use)
  67. {
  68. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  69. TextDrawUseBox(text, use);
  70. TDE_TextDrawInfo[_:text][TDE_TextDrawUseBoxV] = use;
  71. return 1;
  72. }
  73. TDE_TextDrawSetShadow(Text:text, size)
  74. {
  75. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  76. TextDrawSetShadow(text, size);
  77. TDE_TextDrawInfo[_:text][TDE_TextDrawShadow] = size;
  78. return 1;
  79. }
  80. TDE_TextDrawSetOutline(Text:text, size)
  81. {
  82. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  83. TextDrawSetOutline(text, size);
  84. TDE_TextDrawInfo[_:text][TDE_TextDrawOutline] = size;
  85. return 1;
  86. }
  87. TDE_TextDrawBackgroundColor(Text:text, color)
  88. {
  89. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  90. TextDrawBackgroundColor(text, color);
  91. TDE_TextDrawInfo[_:text][TDE_TextDrawBGColor] = color;
  92. return 1;
  93. }
  94. TDE_TextDrawFont(Text:text, font)
  95. {
  96. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  97. TextDrawFont(text, font);
  98. TDE_TextDrawInfo[_:text][TDE_TextDrawFontV] = font;
  99. return 1;
  100. }
  101. TDE_TextDrawSetProportional(Text:text, set)
  102. {
  103. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  104. TextDrawSetProportional(text, set);
  105. TDE_TextDrawInfo[_:text][TDE_Proportional] = set;
  106. return 1;
  107. }
  108. TDE_TextDrawTextSize(Text:text, Float:x, Float:y)
  109. {
  110. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  111. TextDrawTextSize(text, x, y);
  112. TDE_TextDrawInfo[_:text][TDE_TextDrawTextX] = x;
  113. TDE_TextDrawInfo[_:text][TDE_TextDrawTextY] = y;
  114. return 1;
  115. }
  116. TDE_TextDrawSetPreviewModel(Text:text, modelindex)
  117. {
  118. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  119. TextDrawSetPreviewModel(text, modelindex);
  120. TDE_TextDrawInfo[_:text][TDE_TextDrawModelid] = modelindex;
  121. return 1;
  122. }
  123. TDE_TextDrawSetPreviewRot(Text:text, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fZoom)
  124. {
  125. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  126. TextDrawSetPreviewRot(text, fRotX, fRotY, fRotZ, fZoom);
  127. TDE_TextDrawInfo[_:text][TDE_TextDrawRotX] = fRotX;
  128. TDE_TextDrawInfo[_:text][TDE_TextDrawRotY] = fRotY;
  129. TDE_TextDrawInfo[_:text][TDE_TextDrawRotZ] = fRotZ;
  130. TDE_TextDrawInfo[_:text][TDE_TextDrawZoom] = fZoom;
  131. return 1;
  132. }
  133. TDE_TextDrawSetPreviewVehCol(Text:text, color1, color2)
  134. {
  135. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  136. TextDrawSetPreviewVehCol(text, color1, color2);
  137. TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol1] = color1;
  138. TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol2] = color2;
  139. return 1;
  140. }
  141. TDE_TextDrawSetString(Text:text, string[])
  142. {
  143. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  144. TextDrawSetString(text, string);
  145. format(TDE_TextDrawInfo[_:text][TDE_TextDrawText], 800, "%s", string);
  146. return 1;
  147. }
  148. TDE_TextDrawSetSelectable(Text:text, set)
  149. {
  150. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  151. TextDrawSetSelectable(text, set);
  152. TDE_TextDrawInfo[_:text][TDE_TextDrawSelectable] = set;
  153. return 1;
  154. }
  155. TDE_TextDrawBoxColor(Text:text, color)
  156. {
  157. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  158. TextDrawBoxColor(text, color);
  159. TDE_TextDrawInfo[_:text][TDE_TextDrawBoxColorV] = color;
  160. return 1;
  161. }
  162. TDE_TextDrawDestroy(Text:text)
  163. {
  164. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  165. if(TDE_TextDrawInfo[_:text][TDE_IsValidTextDraw] == 0) return 1;
  166. TextDrawDestroy(text);
  167. TDE_TextDrawInfo[_:text][TDE_IsValidTextDraw] = 0;
  168. TDE_TextDrawInfo[_:text][TDE_TextDrawID] = Text:INVALID_TEXT_DRAW;
  169. format(TDE_TextDrawInfo[_:text][TDE_TextDrawText], 800, "");
  170. TDE_TextDrawInfo[_:text][TDE_TextDrawPosX] = 0.0;
  171. TDE_TextDrawInfo[_:text][TDE_TextDrawPosY] = 0.0;
  172. TDE_TextDrawInfo[_:text][TDE_TextDrawLetterX] = 0.0;
  173. TDE_TextDrawInfo[_:text][TDE_TextDrawLetterY] = 0.0;
  174. TDE_TextDrawInfo[_:text][TDE_TextDrawTextX] = 0.0;
  175. TDE_TextDrawInfo[_:text][TDE_TextDrawTextY] = 0.0;
  176. TDE_TextDrawInfo[_:text][TDE_TextDrawAlignmentV] = 0;
  177. TDE_TextDrawInfo[_:text][TDE_TextDrawOutline] = 0;
  178. TDE_TextDrawInfo[_:text][TDE_TextDrawShadow] = 0;
  179. TDE_TextDrawInfo[_:text][TDE_TextDrawModelid] = 0;
  180. TDE_TextDrawInfo[_:text][TDE_TextDrawRotX] = 0.0;
  181. TDE_TextDrawInfo[_:text][TDE_TextDrawRotY] = 0.0;
  182. TDE_TextDrawInfo[_:text][TDE_TextDrawRotZ] = 0.0;
  183. TDE_TextDrawInfo[_:text][TDE_TextDrawZoom] = 0.0;
  184. TDE_TextDrawInfo[_:text][TDE_TextDrawSelectable] = 0;
  185. TDE_TextDrawInfo[_:text][TDE_TextDrawColorV] = 0;
  186. TDE_TextDrawInfo[_:text][TDE_TextDrawBGColor] = 0;
  187. TDE_TextDrawInfo[_:text][TDE_TextDrawUseBoxV] = 0;
  188. TDE_TextDrawInfo[_:text][TDE_TextDrawBoxColorV] = 0;
  189. TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol1] = 0;
  190. TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol2] = 0;
  191. TDE_TextDrawInfo[_:text][TDE_TextDrawFontV] = 0;
  192. TDE_TextDrawInfo[_:text][TDE_Proportional] = 0;
  193. return 1;
  194. }
  195. #define TDE_TextDrawShowForPlayer TextDrawShowForPlayer
  196. #define TDE_TextDrawHideForPlayer TextDrawHideForPlayer
  197. /* */
  198. TDE_TextDrawSetPos(Text:text, Float:x, Float:y)
  199. {
  200. if(_:text > sizeof(TDE_TextDrawInfo)) return 1;
  201. TDE_TextDrawInfo[_:text][TDE_TextDrawPosX] = x;
  202. TDE_TextDrawInfo[_:text][TDE_TextDrawPosY] = y;
  203. TDE_UpdateTextDraw(text);
  204. return 1;
  205. }
  206. TDE_TextDrawGetPos(Text:text, &Float:x, &Float:y)
  207. {
  208. x = TDE_TextDrawInfo[_:text][TDE_TextDrawPosX];
  209. y = TDE_TextDrawInfo[_:text][TDE_TextDrawPosY];
  210. return 1;
  211. }
  212. TDE_TextDrawGetFontSize(Text:text, &Float:x, &Float:y)
  213. {
  214. x = TDE_TextDrawInfo[_:text][TDE_TextDrawLetterX];
  215. y = TDE_TextDrawInfo[_:text][TDE_TextDrawLetterY];
  216. return 1;
  217. }
  218. #define TDE_TextDrawGetFont(%0) TDE_TextDrawInfo[_:%0][TDE_TextDrawFontV]
  219. #define TDE_TextDrawIsBox(%0) TDE_TextDrawInfo[_:%0][TDE_TextDrawUseBoxV]
  220. #define TDE_TextDrawGetAlignment(%0) TDE_TextDrawInfo[_:%0][TDE_TextDrawAlignmentV]
  221. #define TDE_TextDrawIsProportional(%0) TDE_TextDrawInfo[_:%0][TDE_Proportional]
  222. TDE_UpdateTextDraw(&Text:text)
  223. {
  224. TextDrawDestroy(text);
  225. text = TextDrawCreate(TDE_TextDrawInfo[_:text][TDE_TextDrawPosX], TDE_TextDrawInfo[_:text][TDE_TextDrawPosY], TDE_TextDrawInfo[_:text][TDE_TextDrawText]);
  226. TextDrawLetterSize(text, TDE_TextDrawInfo[_:text][TDE_TextDrawLetterX], TDE_TextDrawInfo[_:text][TDE_TextDrawLetterY]);
  227. TextDrawAlignment(text, TDE_TextDrawInfo[_:text][TDE_TextDrawAlignmentV]);
  228. TextDrawColor(text, TDE_TextDrawInfo[_:text][TDE_TextDrawColorV]);
  229. TextDrawUseBox(text, TDE_TextDrawInfo[_:text][TDE_TextDrawUseBoxV]);
  230. TextDrawSetShadow(text, TDE_TextDrawInfo[_:text][TDE_TextDrawShadow]);
  231. TextDrawSetOutline(text, TDE_TextDrawInfo[_:text][TDE_TextDrawOutline]);
  232. TextDrawBackgroundColor(text, TDE_TextDrawInfo[_:text][TDE_TextDrawBGColor]);
  233. TextDrawFont(text, TDE_TextDrawInfo[_:text][TDE_TextDrawFontV]);
  234. TextDrawSetProportional(text, TDE_TextDrawInfo[_:text][TDE_Proportional]);
  235. TextDrawTextSize(text, TDE_TextDrawInfo[_:text][TDE_TextDrawTextX], TDE_TextDrawInfo[_:text][TDE_TextDrawTextY]);
  236. TextDrawSetPreviewModel(text, TDE_TextDrawInfo[_:text][TDE_TextDrawModelid]);
  237. TextDrawSetPreviewRot(text, TDE_TextDrawInfo[_:text][TDE_TextDrawRotX], TDE_TextDrawInfo[_:text][TDE_TextDrawRotY], TDE_TextDrawInfo[_:text][TDE_TextDrawRotZ], TDE_TextDrawInfo[_:text][TDE_TextDrawZoom]);
  238. TextDrawSetPreviewVehCol(text, TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol1], TDE_TextDrawInfo[_:text][TDE_TextDrawVehCol2]);
  239. TextDrawSetSelectable(text, TDE_TextDrawInfo[_:text][TDE_TextDrawSelectable]);
  240. TextDrawBoxColor(text, TDE_TextDrawInfo[_:text][TDE_TextDrawBoxColorV]);
  241. return 1;
  242. }
  243. /*
  244. By adri1 15/05/2015
  245. For TDEditor 1.15+
  246. */