defaults.lua 6.8 KB

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