defaults.lua 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355
  1. for k,v in pairs(math) do _G[k]=v end for k,v in pairs(table) do _G[k]=v end
  2. _G["count"] = function(T)
  3. local _count = 0
  4. for _ in pairs(T) do _count = _count + 1 end
  5. return _count
  6. end
  7. _G["same_c_class"] = function(a,b)
  8. if a == nil or b == nil then return false end
  9. if a.__ptr == nil or b.__ptr == nil then return false end
  10. return __are_same_c_class(a.__ptr,b.__ptr)
  11. end
  12. _G["cast"] = function (c, T)
  13. local ret = T("__skip_ptr__")
  14. ret.__ptr = c.__ptr
  15. return ret
  16. end
  17. function __is_table_kind_of(T,c)
  18. local __baseclass = T
  19. while __baseclass do
  20. if __baseclass.__classname == c.__classname then
  21. return true
  22. end
  23. __baseclass = __baseclass.__baseclass
  24. end
  25. return false
  26. end
  27. _G["safe_cast"] = function(c, T)
  28. if c:isKindOfClass(T) or __is_table_kind_of(T,c) then
  29. return _G["cast"](c, T)
  30. end
  31. return nil
  32. end
  33. _G["print"] = function(msg)
  34. _G["debugPrint"](tostring(msg))
  35. end
  36. _G["__handleEvent"] = function(target, event)
  37. evt = _G["Event"]("__skip_ptr__")
  38. evt.__ptr = event
  39. target.callback(target.listener, evt)
  40. end
  41. __core__services__instance = Polycore.CoreServices_getInstance()
  42. Services = {}
  43. Services.Core = Core("__skip_ptr__")
  44. Services.Core.__ptr = Polycore.CoreServices_getCore(Polycore.CoreServices_getInstance())
  45. Services.Input = Services.Core:getInput()
  46. Services.Renderer = Renderer("__skip_ptr__")
  47. Services.Renderer.__ptr = Polycore.CoreServices_getRenderer(Polycore.CoreServices_getInstance())
  48. Services.Config = Config("__skip_ptr__")
  49. Services.Config.__ptr = Polycore.CoreServices_getConfig(Polycore.CoreServices_getInstance())
  50. Services.MaterialManager = MaterialManager("__skip_ptr__")
  51. Services.MaterialManager.__ptr = Polycore.CoreServices_getMaterialManager(Polycore.CoreServices_getInstance())
  52. Services.ScreenManager = ScreenManager("__skip_ptr__")
  53. Services.ScreenManager.__ptr = Polycore.CoreServices_getScreenManager(Polycore.CoreServices_getInstance())
  54. Services.SceneManager = SceneManager("__skip_ptr__")
  55. Services.SceneManager.__ptr = Polycore.CoreServices_getSceneManager(Polycore.CoreServices_getInstance())
  56. Services.TimerManager = TimerManager("__skip_ptr__")
  57. Services.TimerManager.__ptr = Polycore.CoreServices_getTimerManager(Polycore.CoreServices_getInstance())
  58. Services.TweenManager = TweenManager("__skip_ptr__")
  59. Services.TweenManager.__ptr = Polycore.CoreServices_getTweenManager(Polycore.CoreServices_getInstance())
  60. Services.ResourceManager = ResourceManager("__skip_ptr__")
  61. Services.ResourceManager.__ptr = Polycore.CoreServices_getResourceManager(Polycore.CoreServices_getInstance())
  62. Services.SoundManager = SoundManager("__skip_ptr__")
  63. Services.SoundManager.__ptr = Polycore.CoreServices_getSoundManager(Polycore.CoreServices_getInstance())
  64. Services.FontManager = FontManager("__skip_ptr__")
  65. Services.FontManager.__ptr = Polycore.CoreServices_getFontManager(Polycore.CoreServices_getInstance())
  66. function delete(c)
  67. c:__delete()
  68. end
  69. __safe_delete_list = {}
  70. function __process_safe_delete()
  71. for i=1,count(__safe_delete_list) do
  72. __safe_delete_list[i]:__delete()
  73. end
  74. __safe_delete_list = {}
  75. end
  76. function safe_delete(c)
  77. __safe_delete_list[count(__safe_delete_list)+1] = c
  78. end
  79. function onKeyDown(key)
  80. end
  81. function onKeyUp(key)
  82. end
  83. function onMouseDown(button, x,y)
  84. end
  85. function onMouseUp(button, x,y)
  86. end
  87. function onMouseMove(x,y)
  88. end
  89. function Update(e)
  90. end
  91. KEY_UNKNOWN= 0
  92. KEY_FIRST= 0
  93. KEY_BACKSPACE= 8
  94. KEY_TAB= 9
  95. KEY_CLEAR= 12
  96. KEY_RETURN= 13
  97. KEY_PAUSE= 19
  98. KEY_ESCAPE= 27
  99. KEY_SPACE= 32
  100. KEY_EXCLAIM= 33
  101. KEY_QUOTEDBL= 34
  102. KEY_HASH= 35
  103. KEY_DOLLAR= 36
  104. KEY_AMPERSAND= 38
  105. KEY_QUOTE= 39
  106. KEY_LEFTPAREN= 40
  107. KEY_RIGHTPAREN= 41
  108. KEY_ASTERISK= 42
  109. KEY_PLUS= 43
  110. KEY_COMMA= 44
  111. KEY_MINUS= 45
  112. KEY_PERIOD= 46
  113. KEY_SLASH= 47
  114. KEY_0= 48
  115. KEY_1= 49
  116. KEY_2= 50
  117. KEY_3= 51
  118. KEY_4= 52
  119. KEY_5= 53
  120. KEY_6= 54
  121. KEY_7= 55
  122. KEY_8= 56
  123. KEY_9= 57
  124. KEY_COLON= 58
  125. KEY_SEMICOLON= 59
  126. KEY_LESS= 60
  127. KEY_EQUALS= 61
  128. KEY_GREATER= 62
  129. KEY_QUESTION= 63
  130. KEY_AT= 64
  131. KEY_LEFTBRACKET= 91
  132. KEY_BACKSLASH= 92
  133. KEY_RIGHTBRACKET= 93
  134. KEY_CARET= 94
  135. KEY_UNDERSCORE= 95
  136. KEY_BACKQUOTE= 96
  137. KEY_a= 97
  138. KEY_b= 98
  139. KEY_c= 99
  140. KEY_d= 100
  141. KEY_e= 101
  142. KEY_f= 102
  143. KEY_g= 103
  144. KEY_h= 104
  145. KEY_i= 105
  146. KEY_j= 106
  147. KEY_k= 107
  148. KEY_l= 108
  149. KEY_m= 109
  150. KEY_n= 110
  151. KEY_o= 111
  152. KEY_p= 112
  153. KEY_q= 113
  154. KEY_r= 114
  155. KEY_s= 115
  156. KEY_t= 116
  157. KEY_u= 117
  158. KEY_v= 118
  159. KEY_w= 119
  160. KEY_x= 120
  161. KEY_y= 121
  162. KEY_z= 122
  163. KEY_DELETE= 127
  164. KEY_WORLD_0= 160
  165. KEY_WORLD_1= 161
  166. KEY_WORLD_2= 162
  167. KEY_WORLD_3= 163
  168. KEY_WORLD_4= 164
  169. KEY_WORLD_5= 165
  170. KEY_WORLD_6= 166
  171. KEY_WORLD_7= 167
  172. KEY_WORLD_8= 168
  173. KEY_WORLD_9= 169
  174. KEY_WORLD_10= 170
  175. KEY_WORLD_11= 171
  176. KEY_WORLD_12= 172
  177. KEY_WORLD_13= 173
  178. KEY_WORLD_14= 174
  179. KEY_WORLD_15= 175
  180. KEY_WORLD_16= 176
  181. KEY_WORLD_17= 177
  182. KEY_WORLD_18= 178
  183. KEY_WORLD_19= 179
  184. KEY_WORLD_20= 180
  185. KEY_WORLD_21= 181
  186. KEY_WORLD_22= 182
  187. KEY_WORLD_23= 183
  188. KEY_WORLD_24= 184
  189. KEY_WORLD_25= 185
  190. KEY_WORLD_26= 186
  191. KEY_WORLD_27= 187
  192. KEY_WORLD_28= 188
  193. KEY_WORLD_29= 189
  194. KEY_WORLD_30= 190
  195. KEY_WORLD_31= 191
  196. KEY_WORLD_32= 192
  197. KEY_WORLD_33= 193
  198. KEY_WORLD_34= 194
  199. KEY_WORLD_35= 195
  200. KEY_WORLD_36= 196
  201. KEY_WORLD_37= 197
  202. KEY_WORLD_38= 198
  203. KEY_WORLD_39= 199
  204. KEY_WORLD_40= 200
  205. KEY_WORLD_41= 201
  206. KEY_WORLD_42= 202
  207. KEY_WORLD_43= 203
  208. KEY_WORLD_44= 204
  209. KEY_WORLD_45= 205
  210. KEY_WORLD_46= 206
  211. KEY_WORLD_47= 207
  212. KEY_WORLD_48= 208
  213. KEY_WORLD_49= 209
  214. KEY_WORLD_50= 210
  215. KEY_WORLD_51= 211
  216. KEY_WORLD_52= 212
  217. KEY_WORLD_53= 213
  218. KEY_WORLD_54= 214
  219. KEY_WORLD_55= 215
  220. KEY_WORLD_56= 216
  221. KEY_WORLD_57= 217
  222. KEY_WORLD_58= 218
  223. KEY_WORLD_59= 219
  224. KEY_WORLD_60= 220
  225. KEY_WORLD_61= 221
  226. KEY_WORLD_62= 222
  227. KEY_WORLD_63= 223
  228. KEY_WORLD_64= 224
  229. KEY_WORLD_65= 225
  230. KEY_WORLD_66= 226
  231. KEY_WORLD_67= 227
  232. KEY_WORLD_68= 228
  233. KEY_WORLD_69= 229
  234. KEY_WORLD_70= 230
  235. KEY_WORLD_71= 231
  236. KEY_WORLD_72= 232
  237. KEY_WORLD_73= 233
  238. KEY_WORLD_74= 234
  239. KEY_WORLD_75= 235
  240. KEY_WORLD_76= 236
  241. KEY_WORLD_77= 237
  242. KEY_WORLD_78= 238
  243. KEY_WORLD_79= 239
  244. KEY_WORLD_80= 240
  245. KEY_WORLD_81= 241
  246. KEY_WORLD_82= 242
  247. KEY_WORLD_83= 243
  248. KEY_WORLD_84= 244
  249. KEY_WORLD_85= 245
  250. KEY_WORLD_86= 246
  251. KEY_WORLD_87= 247
  252. KEY_WORLD_88= 248
  253. KEY_WORLD_89= 249
  254. KEY_WORLD_90= 250
  255. KEY_WORLD_91= 251
  256. KEY_WORLD_92= 252
  257. KEY_WORLD_93= 253
  258. KEY_WORLD_94= 254
  259. KEY_WORLD_95= 255
  260. KEY_KP0= 256
  261. KEY_KP1= 257
  262. KEY_KP2= 258
  263. KEY_KP3= 259
  264. KEY_KP4= 260
  265. KEY_KP5= 261
  266. KEY_KP6= 262
  267. KEY_KP7= 263
  268. KEY_KP8= 264
  269. KEY_KP9= 265
  270. KEY_KP_PERIOD= 266
  271. KEY_KP_DIVIDE= 267
  272. KEY_KP_MULTIPLY= 268
  273. KEY_KP_MINUS= 269
  274. KEY_KP_PLUS= 270
  275. KEY_KP_ENTER= 271
  276. KEY_KP_EQUALS= 272
  277. KEY_UP= 273
  278. KEY_DOWN= 274
  279. KEY_RIGHT= 275
  280. KEY_LEFT= 276
  281. KEY_INSERT= 277
  282. KEY_HOME= 278
  283. KEY_END= 279
  284. KEY_PAGEUP= 280
  285. KEY_PAGEDOWN= 281
  286. KEY_F1= 282
  287. KEY_F2= 283
  288. KEY_F3= 284
  289. KEY_F4= 285
  290. KEY_F5= 286
  291. KEY_F6= 287
  292. KEY_F7= 288
  293. KEY_F8= 289
  294. KEY_F9= 290
  295. KEY_F10= 291
  296. KEY_F11= 292
  297. KEY_F12= 293
  298. KEY_F13= 294
  299. KEY_F14= 295
  300. KEY_F15= 296
  301. KEY_NUMLOCK= 300
  302. KEY_CAPSLOCK= 301
  303. KEY_SCROLLOCK= 302
  304. KEY_RSHIFT= 303
  305. KEY_LSHIFT= 304
  306. KEY_RCTRL= 305
  307. KEY_LCTRL= 306
  308. KEY_RALT= 307
  309. KEY_LALT= 308
  310. KEY_RMETA= 309
  311. KEY_LMETA= 310
  312. KEY_LSUPER= 311
  313. KEY_RSUPER= 312
  314. KEY_MODE= 313
  315. KEY_COMPOSE= 314
  316. KEY_HELP= 315
  317. KEY_PRINT= 316
  318. KEY_SYSREQ= 317
  319. KEY_BREAK= 318
  320. KEY_MENU= 319
  321. KEY_POWER= 320
  322. KEY_EURO= 321
  323. KEY_UNDO= 322