defaults.lua 6.7 KB

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