defaults.lua 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364
  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 onJoystickButtonDown(id, button)
  90. end
  91. function onJoystickButtonUp(id, button)
  92. end
  93. function onJoystickAxisMoved(id, axis, value)
  94. end
  95. function Update(e)
  96. end
  97. KEY_UNKNOWN= 0
  98. KEY_FIRST= 0
  99. KEY_BACKSPACE= 8
  100. KEY_TAB= 9
  101. KEY_CLEAR= 12
  102. KEY_RETURN= 13
  103. KEY_PAUSE= 19
  104. KEY_ESCAPE= 27
  105. KEY_SPACE= 32
  106. KEY_EXCLAIM= 33
  107. KEY_QUOTEDBL= 34
  108. KEY_HASH= 35
  109. KEY_DOLLAR= 36
  110. KEY_AMPERSAND= 38
  111. KEY_QUOTE= 39
  112. KEY_LEFTPAREN= 40
  113. KEY_RIGHTPAREN= 41
  114. KEY_ASTERISK= 42
  115. KEY_PLUS= 43
  116. KEY_COMMA= 44
  117. KEY_MINUS= 45
  118. KEY_PERIOD= 46
  119. KEY_SLASH= 47
  120. KEY_0= 48
  121. KEY_1= 49
  122. KEY_2= 50
  123. KEY_3= 51
  124. KEY_4= 52
  125. KEY_5= 53
  126. KEY_6= 54
  127. KEY_7= 55
  128. KEY_8= 56
  129. KEY_9= 57
  130. KEY_COLON= 58
  131. KEY_SEMICOLON= 59
  132. KEY_LESS= 60
  133. KEY_EQUALS= 61
  134. KEY_GREATER= 62
  135. KEY_QUESTION= 63
  136. KEY_AT= 64
  137. KEY_LEFTBRACKET= 91
  138. KEY_BACKSLASH= 92
  139. KEY_RIGHTBRACKET= 93
  140. KEY_CARET= 94
  141. KEY_UNDERSCORE= 95
  142. KEY_BACKQUOTE= 96
  143. KEY_a= 97
  144. KEY_b= 98
  145. KEY_c= 99
  146. KEY_d= 100
  147. KEY_e= 101
  148. KEY_f= 102
  149. KEY_g= 103
  150. KEY_h= 104
  151. KEY_i= 105
  152. KEY_j= 106
  153. KEY_k= 107
  154. KEY_l= 108
  155. KEY_m= 109
  156. KEY_n= 110
  157. KEY_o= 111
  158. KEY_p= 112
  159. KEY_q= 113
  160. KEY_r= 114
  161. KEY_s= 115
  162. KEY_t= 116
  163. KEY_u= 117
  164. KEY_v= 118
  165. KEY_w= 119
  166. KEY_x= 120
  167. KEY_y= 121
  168. KEY_z= 122
  169. KEY_DELETE= 127
  170. KEY_WORLD_0= 160
  171. KEY_WORLD_1= 161
  172. KEY_WORLD_2= 162
  173. KEY_WORLD_3= 163
  174. KEY_WORLD_4= 164
  175. KEY_WORLD_5= 165
  176. KEY_WORLD_6= 166
  177. KEY_WORLD_7= 167
  178. KEY_WORLD_8= 168
  179. KEY_WORLD_9= 169
  180. KEY_WORLD_10= 170
  181. KEY_WORLD_11= 171
  182. KEY_WORLD_12= 172
  183. KEY_WORLD_13= 173
  184. KEY_WORLD_14= 174
  185. KEY_WORLD_15= 175
  186. KEY_WORLD_16= 176
  187. KEY_WORLD_17= 177
  188. KEY_WORLD_18= 178
  189. KEY_WORLD_19= 179
  190. KEY_WORLD_20= 180
  191. KEY_WORLD_21= 181
  192. KEY_WORLD_22= 182
  193. KEY_WORLD_23= 183
  194. KEY_WORLD_24= 184
  195. KEY_WORLD_25= 185
  196. KEY_WORLD_26= 186
  197. KEY_WORLD_27= 187
  198. KEY_WORLD_28= 188
  199. KEY_WORLD_29= 189
  200. KEY_WORLD_30= 190
  201. KEY_WORLD_31= 191
  202. KEY_WORLD_32= 192
  203. KEY_WORLD_33= 193
  204. KEY_WORLD_34= 194
  205. KEY_WORLD_35= 195
  206. KEY_WORLD_36= 196
  207. KEY_WORLD_37= 197
  208. KEY_WORLD_38= 198
  209. KEY_WORLD_39= 199
  210. KEY_WORLD_40= 200
  211. KEY_WORLD_41= 201
  212. KEY_WORLD_42= 202
  213. KEY_WORLD_43= 203
  214. KEY_WORLD_44= 204
  215. KEY_WORLD_45= 205
  216. KEY_WORLD_46= 206
  217. KEY_WORLD_47= 207
  218. KEY_WORLD_48= 208
  219. KEY_WORLD_49= 209
  220. KEY_WORLD_50= 210
  221. KEY_WORLD_51= 211
  222. KEY_WORLD_52= 212
  223. KEY_WORLD_53= 213
  224. KEY_WORLD_54= 214
  225. KEY_WORLD_55= 215
  226. KEY_WORLD_56= 216
  227. KEY_WORLD_57= 217
  228. KEY_WORLD_58= 218
  229. KEY_WORLD_59= 219
  230. KEY_WORLD_60= 220
  231. KEY_WORLD_61= 221
  232. KEY_WORLD_62= 222
  233. KEY_WORLD_63= 223
  234. KEY_WORLD_64= 224
  235. KEY_WORLD_65= 225
  236. KEY_WORLD_66= 226
  237. KEY_WORLD_67= 227
  238. KEY_WORLD_68= 228
  239. KEY_WORLD_69= 229
  240. KEY_WORLD_70= 230
  241. KEY_WORLD_71= 231
  242. KEY_WORLD_72= 232
  243. KEY_WORLD_73= 233
  244. KEY_WORLD_74= 234
  245. KEY_WORLD_75= 235
  246. KEY_WORLD_76= 236
  247. KEY_WORLD_77= 237
  248. KEY_WORLD_78= 238
  249. KEY_WORLD_79= 239
  250. KEY_WORLD_80= 240
  251. KEY_WORLD_81= 241
  252. KEY_WORLD_82= 242
  253. KEY_WORLD_83= 243
  254. KEY_WORLD_84= 244
  255. KEY_WORLD_85= 245
  256. KEY_WORLD_86= 246
  257. KEY_WORLD_87= 247
  258. KEY_WORLD_88= 248
  259. KEY_WORLD_89= 249
  260. KEY_WORLD_90= 250
  261. KEY_WORLD_91= 251
  262. KEY_WORLD_92= 252
  263. KEY_WORLD_93= 253
  264. KEY_WORLD_94= 254
  265. KEY_WORLD_95= 255
  266. KEY_KP0= 256
  267. KEY_KP1= 257
  268. KEY_KP2= 258
  269. KEY_KP3= 259
  270. KEY_KP4= 260
  271. KEY_KP5= 261
  272. KEY_KP6= 262
  273. KEY_KP7= 263
  274. KEY_KP8= 264
  275. KEY_KP9= 265
  276. KEY_KP_PERIOD= 266
  277. KEY_KP_DIVIDE= 267
  278. KEY_KP_MULTIPLY= 268
  279. KEY_KP_MINUS= 269
  280. KEY_KP_PLUS= 270
  281. KEY_KP_ENTER= 271
  282. KEY_KP_EQUALS= 272
  283. KEY_UP= 273
  284. KEY_DOWN= 274
  285. KEY_RIGHT= 275
  286. KEY_LEFT= 276
  287. KEY_INSERT= 277
  288. KEY_HOME= 278
  289. KEY_END= 279
  290. KEY_PAGEUP= 280
  291. KEY_PAGEDOWN= 281
  292. KEY_F1= 282
  293. KEY_F2= 283
  294. KEY_F3= 284
  295. KEY_F4= 285
  296. KEY_F5= 286
  297. KEY_F6= 287
  298. KEY_F7= 288
  299. KEY_F8= 289
  300. KEY_F9= 290
  301. KEY_F10= 291
  302. KEY_F11= 292
  303. KEY_F12= 293
  304. KEY_F13= 294
  305. KEY_F14= 295
  306. KEY_F15= 296
  307. KEY_NUMLOCK= 300
  308. KEY_CAPSLOCK= 301
  309. KEY_SCROLLOCK= 302
  310. KEY_RSHIFT= 303
  311. KEY_LSHIFT= 304
  312. KEY_RCTRL= 305
  313. KEY_LCTRL= 306
  314. KEY_RALT= 307
  315. KEY_LALT= 308
  316. KEY_RMETA= 309
  317. KEY_LMETA= 310
  318. KEY_LSUPER= 311
  319. KEY_RSUPER= 312
  320. KEY_MODE= 313
  321. KEY_COMPOSE= 314
  322. KEY_HELP= 315
  323. KEY_PRINT= 316
  324. KEY_SYSREQ= 317
  325. KEY_BREAK= 318
  326. KEY_MENU= 319
  327. KEY_POWER= 320
  328. KEY_EURO= 321
  329. KEY_UNDO= 322