· 6 years ago · Jul 28, 2019, 01:22 AM
1Addons => Addons are functions that are Lua-Made and give scripters the correct information of something they need!
2They are separeted in a lot of parts!
3
4############ DigiWo Addon ############
5
6############ Classes ############
7
8function Digimon(cid {INT})
9Digimon:getId() => Database ID {INT}
10Digimon:getCid() => Creature ID {INT}
11Digimon:getCreature() => Creature {Class}
12Digimon:getType() => partner {STRING} / wild {STRING}
13Digimon:getInfo() => getDigimonInternalInformation() / getWildDigimonInternalInformation()
14Digimon:getDigimonType() => digimon {STRING}
15
16function Hunt(id {INT})
17Hunt:getId() => huntId {INT}
18Hunt:getName() => huntName {STRING}
19Hunt:getLootRate() => huntLootRate {INT}
20Hunt:getRefreshRate() => huntRefreshRate {INT}
21Hunt:setLootRate(rate {INT}) => setHuntLootRate {INT}
22Hunt:registerDigimon(cid {INT}, huntDigiType {INT}) => Will register wild digimon in hunt
23Hunt:unregisterDigimon(cid {INT}, huntDigiType {INT}) => Will unregister wild digimon from hunt
24Hunt:refresh() => Will spawn queue-digimons at randon positions registered
25Hunt:enable() => Will enable the hunt to start working
26Hunt:disable() => Will disable the hunt, and stop it from refreshing
27
28function addDigimon(type {INT}, stage {INT}, name {STRING}, digimon {STRING}, owner {STRING}, level {INT}, experience {INT}, addonLookType {INT}, strength {INT}, wisdom {INT}, agility {INT}, defence {INT}, magicResistance {INT}, lucky {INT}, hungry {INT}, happiness {INT}, health {INT}, [cooldowns {STRING}])
29
30Will add a new digimon at database;
31Remember to apply the returned ID to an Item (database) so you will be able to call it;
32
33@return id {INT}
34
35+++++++++++++++++++++++++++++++++++
36
37function getDigimonInformationById(id {INT})
38
39Will get database information;
40
41local table = {
42 type, {INT}
43 stage, {INT}
44 name, {STRING}
45 digimon, {STRING}
46 owner, {STRING}
47 level, {INT}
48 experience, {INT}
49 addonLookType, {INT}
50 strength, {INT}
51 wisdom, {INT}
52 agility, {INT}
53 defence, {INT}
54 magicResistance, {INT}
55 lucky, {INT}
56 hungry, {INT}
57 happiness, {INT}
58 health, {INT}
59 cooldowns, {INT}
60 }
61}
62
63@return table or false
64
65+++++++++++++++++++++++++++++++++++
66
67function isDigimonIdInUse(id)
68
69Will check if an ID in database is already in use
70
71@return true or false
72
73+++++++++++++++++++++++++++++++++++
74
75function getLastDigimonId(id)
76
77Will get the last Digimon ID used in database
78
79@return result
80
81+++++++++++++++++++++++++++++++++++
82
83function removeDigimon(id)
84
85Will remove a Digimon from database
86
87@return nil
88
89+++++++++++++++++++++++++++++++++++
90
91function saveToDigimon(id {INT}, thing {type/stage/name/digimon/owner/level/experience/addonLookType/strength/wisdom/agility/defence/magicResistance/lucky/hungry/happiness/health/cooldowns => STRING} , param {STRING})
92
93You will be able to modify a value from database
94
95@return nil
96
97+++++++++++++++++++++++++++++++++++
98
99function saveDigimon(id {INT}, type {INT}, stage {INT}, name {STRING}, digimon {STRING}, owner {STRING}, level {INT}, experience {INT}, addonLookType {INT}, strength {INT}, wisdom {INT}, agility {INT}, defence {INT}, magicResistance {INT}, lucky {INT}, hungry {INT}, happiness {INT}, health {INT}, [cooldowns {STRING}])
100
101Only for radical information to change at database, will change every data
102
103@return nil
104
105+++++++++++++++++++++++++++++++++++
106
107function getAvailablePointsOfDigimons(id {INT})
108
109This will return the available points of Digimon (Database ID only)
110
111@return points {INT} or false
112
113+++++++++++++++++++++++++++++++++++
114
115function getDigimonInternalInformation(cid {INT})
116
117Will return this following table based on creature id (Partners Only)
118
119local digimonInternalInfo = {
120 id, {INT}
121 level, {INT}
122 name, {STRING}
123 digimon, {STRING}
124 temporary, {STRING}
125 attr = { {TABLE}
126 ["Strength"], {INT}
127 ["Lucky"], {INT}
128 ["Wisdom"], {INT}
129 ["Agility"], {INT}
130 ["MagicResistance"], {INT}
131 ["Defence"], {INT}
132 },
133 cooldowns = { {TABLE}
134 [1-12], {INT}
135 }
136}
137
138@return digimonInternalInfo or false
139
140+++++++++++++++++++++++++++++++++++
141
142function getWildDigimonInternalInformation(cid {INT})
143
144Will return this following table based on creature id (Wild Only)
145
146local wildDigimonInternalInfo = {
147 level, {INT}
148 digimon, {STRING}
149 attr = { {TABLE}
150 ["Strength"], {INT}
151 ["Lucky"], {INT}
152 ["Wisdom"], {INT}
153 ["Agility"], {INT}
154 ["MagicResistance"], {INT}
155 ["Defence"], {INT}
156 },
157 cooldowns = { {TABLE}
158 [1-12], {INT}
159 }
160}
161
162@return wildDigimonInternalInfo or false
163
164+++++++++++++++++++++++++++++++++++
165
166function getDigimonTypeInformation(digimon {STRING})
167
168Will return this table about the digimon
169
170local digimonInformation = {
171 chart = "fresh", {STRING}
172
173 catch = { {TABLE}
174 digimon = "Mokumon", {STRING}
175 digitama = 2343, {INT}
176 chance = 50000, {INT => 1 - 100000}
177 },
178
179 wildAttrMultipler = { {TABLE}
180 ["Strength"] = 2, {INT}
181 ["Lucky"] = 2, {INT}
182 ["Wisdom"] = 1, {INT}
183 ["Agility"] = 1, {INT}
184 ["MagicResistance"] = 1, {INT}
185 ["Defence"] = 1, {INT}
186 },
187
188 baseAttr = { {TABLE}
189 ["Strength"] = 4, {INT}
190 ["Lucky"] = 4, {INT}
191 ["Wisdom"] = 2, {INT}
192 ["Agility"] = 2, {INT}
193 ["MagicResistance"] = 2, {INT}
194 ["Defence"] = 2, {INT}
195 },
196
197 moves = { {TABLE}
198 [1 {INT}] = { {TABLE}
199 name = "Bubbles", {STRING}
200 cooldown = 2, {INT}
201 requirements = { {TABLE}
202 ["Level"] = 10, {INT/NILL}
203 ["asAttr"] = 100, {INT/NILL}
204 ["attr"] = {
205 ["Strength"] = 10, {INT/NILL}
206 ["Wisdom"] = 10, {INT/NILL}
207 ["Lucky"] = 10, {INT/NILL}
208 ["Agility"] = 10, {INT/NILL}
209 ["Defence"] = 10, {INT/NILL}
210 ["Magic Resistance"] = 10, {INT/NILL}
211 }
212 },
213 },
214 },
215
216 skills = { {TABLE}
217 },
218
219 evolutions = { {TABLE}
220 permanent = { {TABLE}
221 [1 {INT}] = { {TABLE}
222 digimon = "Demi Meramon", {STRING}
223 level = 6, {INT}
224 last = true, {BOOL}
225 required = { {TABLE}
226 ["Defence"] = 10, {INT/NILL}
227 ["MagicResistance"] = 20, {INT/NILL}
228 ["Lucky"] = 20, {INT/NILL}
229 },
230 },
231
232 [2 {INT}] = { {TABLE}
233 digimon = "Pagumon", {STRING}
234 level = 5, {INT}
235 required = { {TABLE}
236 ["Strength"] = 10, {INT/NILL}
237 ["Wisdom"] = 10, {INT/NILL}
238 },
239 },
240 },
241 temporary = { {TABLE}
242 },
243 },
244
245}
246
247@return table or false
248
249+++++++++++++++++++++++++++++++++++
250
251function callPlayerDigimon(player {CLASS}, [tempDigimon {STRING}, effect {INT}])
252
253Will call player digimon situated at the correct slot
254You can call digimon as a different digimon type changing to its name tempDigimon
255
256@return true or false
257
258+++++++++++++++++++++++++++++++++++
259
260function backPlayerDigimon(player {CLASS}, [effect {INT}])
261
262Will put current active digimon inside its item again
263
264@return true or false
265
266+++++++++++++++++++++++++++++++++++
267
268function sendPackageToClient(player {CLASS}, opcode {INT}, information {TABLE})
269
270Will send a table as package to players client
271
272@return true or false
273
274+++++++++++++++++++++++++++++++++++
275
276function getDigimonDatabaseId(item)
277
278Will get digimon Database ID from digimon Database(item)
279
280@return id {INT}
281
282+++++++++++++++++++++++++++++++++++
283
284function getDigimonRequiredExperienceForLevel(level)
285
286Will return the experience required to be in params level
287
288@return experience {INT} or false
289
290+++++++++++++++++++++++++++++++++++
291
292function getPermanentEvolutionAvailable(id {INT}, digimon {CLASS - MONSTER})
293
294Will get the permanent evolution that is available for this digimon (Partner Only)
295
296local permanentEvolution = { {TABLE}
297 digimon, {STRING}
298 level, {INT}
299 last, {BOOL}
300 required = { {TABLE}
301 ["Defence"], {INT}
302 ["MagicResistance"], {INT}
303 ["Lucky"], {INT}
304 ["Strength"], {INT}
305 ["Wisdom"], {INT}
306 ["Agility"], {INT}
307 }
308}
309
310@return permanentEvolution {TABLE}
311
312+++++++++++++++++++++++++++++++++++
313
314function isWalkable(position {CLASS}, [bool {BOOLEAN}])
315
316Will check if that position SQM isWalkable
317if bool is true, it will ignore SQMs that has creatures!
318
319@return true or false
320
321+++++++++++++++++++++++++++++++++++
322
323function dump(table {TABLE})
324
325Will print the table at console log
326
327@return table {STRING}
328
329+++++++++++++++++++++++++++++++++++
330
331function getExperienceReceivedFromWildDigimonWithThisInformation(wildDigimonInformation {TABLE})
332
333Will return the amount of experience will be gave killing a WILD digimon with this wildDigimonInformation status
334
335@return experience {INT}
336
337+++++++++++++++++++++++++++++++++++
338
339function refreshDigimonHealthBar(creature {CLASS})
340
341Need to be used when Digimon Health bar suffer changes
342
343@return true or false
344
345+++++++++++++++++++++++++++++++++++
346
347function getDigimonType(cid {INT})
348
349Will return if creature with this CreatureID is partner or wild
350
351@return "partner" or "wild" or false
352
353+++++++++++++++++++++++++++++++++++
354
355function getDigimonInfo(cid {INT})
356
357Will return digimon internal information independant from being wild or partner
358
359@return digiInfo {TABLE} or false
360
361+++++++++++++++++++++++++++++++++++
362
363function getAttackValue(type {STRING ["Physical"/"Magic"]}, minOrMax {STRING [min]/[max]}, digiInfo {TABLE})
364
365Will calculate the attack value
366
367@return value {INT} or false
368
369+++++++++++++++++++++++++++++++++++
370
371function getDefenseValue(type {STRING ["Physical"/"Magic"]}, minOrMax {STRING [min]/[max]}, digiInfo {TABLE})
372
373Will calculate the defense value
374
375@return value {INT} or false
376
377+++++++++++++++++++++++++++++++++++
378
379function getNearestPosition(position {TABLE}, random {BOOLEAN}, ignoreCreaturesInSQM {BOOLEAN})
380
381Will search for a near walkable position, sequentially as the exemple
382
383{1,2,3}
384{8,+,4}
385{7,6,5}
386
387If random is true it will random the order of positions to search
388ignoreCreaturesInSQM, if true will ignore creatures at the position SQM
389
390@return position {TABLE} or false
391
392+++++++++++++++++++++++++++++++++++
393
394function doSendAnimatedDamage(position {TABLE}, amount {ID}, color {ForgottenColorTypes})
395
396Will send an Animated Damage with custom color at selected position
397
398@return true or false
399
400+++++++++++++++++++++++++++++++++++
401
402void function doCreateTile(id {INT}, pos {TABLE})
403
404Will create a tile with selected id at selected position
405
406+++++++++++++++++++++++++++++++++++
407
408function getTableFromString(table {STRING})
409
410Will convert a string into a table
411
412@return covertedTable {TABLE} or false
413
414+++++++++++++++++++++++++++++++++++
415
416=> Forgotten Color Types <=
417
418TEXTCOLOR_BLUE = 5,
419TEXTCOLOR_LIGHTGREEN = 30,
420TEXTCOLOR_LIGHTBLUE = 35,
421TEXTCOLOR_MAYABLUE = 95,
422TEXTCOLOR_DARKRED = 108,
423TEXTCOLOR_LIGHTGREY = 129,
424TEXTCOLOR_SKYBLUE = 143,
425TEXTCOLOR_PURPLE = 154,
426TEXTCOLOR_RED = 180,
427TEXTCOLOR_ORANGE = 198,
428TEXTCOLOR_YELLOW = 210,
429TEXTCOLOR_WHITE_EXP = 215,
430TEXTCOLOR_NONE = 255,
431
432=> Name Colors <=
433
434Light Red
435Red
436Dark Red
437
438Light Yellow
439Yellow
440Dark Yellow
441
442Light Blue
443Blue
444Dark Blue
445
446Light Green
447Green
448Dark Green
449
450Light Cyan
451Cyan
452Dark Cyan
453
454Light Violet
455Violet
456Dark Violet
457
458Light Purple
459Purple
460Dark Purple
461
462Light Orange
463Orange
464Dark Orange
465
466White
467Grey
468Black
469
470All the credits goes to ReyHammer, who created all the system based on TFS 1.0;
471And it can only be used by himself and Flyckks.
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491 // conversion globals
492 g_lua.bindGlobalFunction("torect", [](const std::string& v) { return stdext::from_string<Rect>(v); });
493 g_lua.bindGlobalFunction("topoint", [](const std::string& v) { return stdext::from_string<Point>(v); });
494 g_lua.bindGlobalFunction("tocolor", [](const std::string& v) { return stdext::from_string<Color>(v); });
495 g_lua.bindGlobalFunction("tosize", [](const std::string& v) { return stdext::from_string<Size>(v); });
496 g_lua.bindGlobalFunction("recttostring", [](const Rect& v) { return stdext::to_string(v); });
497 g_lua.bindGlobalFunction("pointtostring", [](const Point& v) { return stdext::to_string(v); });
498 g_lua.bindGlobalFunction("colortostring", [](const Color& v) { return stdext::to_string(v); });
499 g_lua.bindGlobalFunction("sizetostring", [](const Size& v) { return stdext::to_string(v); });
500 g_lua.bindGlobalFunction("iptostring", [](int v) { return stdext::ip_to_string(v); });
501 g_lua.bindGlobalFunction("stringtoip", [](const std::string& v) { return stdext::string_to_ip(v); });
502 g_lua.bindGlobalFunction("listSubnetAddresses", [](uint32 a, uint8 b) { return stdext::listSubnetAddresses(a, b); });
503 g_lua.bindGlobalFunction("ucwords", [](std::string s) { return stdext::ucwords(s); });
504
505
506 // Platform
507 g_lua.registerSingletonClass("g_platform");
508 g_lua.bindSingletonFunction("g_platform", "spawnProcess", &Platform::spawnProcess, &g_platform);
509 g_lua.bindSingletonFunction("g_platform", "getProcessId", &Platform::getProcessId, &g_platform);
510 g_lua.bindSingletonFunction("g_platform", "isProcessRunning", &Platform::isProcessRunning, &g_platform);
511 g_lua.bindSingletonFunction("g_platform", "copyFile", &Platform::copyFile, &g_platform);
512 g_lua.bindSingletonFunction("g_platform", "fileExists", &Platform::fileExists, &g_platform);
513 g_lua.bindSingletonFunction("g_platform", "removeFile", &Platform::removeFile, &g_platform);
514 g_lua.bindSingletonFunction("g_platform", "killProcess", &Platform::killProcess, &g_platform);
515 g_lua.bindSingletonFunction("g_platform", "getTempPath", &Platform::getTempPath, &g_platform);
516 g_lua.bindSingletonFunction("g_platform", "openUrl", &Platform::openUrl, &g_platform);
517 g_lua.bindSingletonFunction("g_platform", "getCPUName", &Platform::getCPUName, &g_platform);
518 g_lua.bindSingletonFunction("g_platform", "getTotalSystemMemory", &Platform::getTotalSystemMemory, &g_platform);
519 g_lua.bindSingletonFunction("g_platform", "getOSName", &Platform::getOSName, &g_platform);
520 g_lua.bindSingletonFunction("g_platform", "getFileModificationTime", &Platform::getFileModificationTime, &g_platform);
521
522
523 // Application
524 g_lua.registerSingletonClass("g_app");
525 g_lua.bindSingletonFunction("g_app", "setName", &Application::setName, static_cast<Application*>(&g_app));
526 g_lua.bindSingletonFunction("g_app", "setCompactName", &Application::setCompactName, static_cast<Application*>(&g_app));
527 g_lua.bindSingletonFunction("g_app", "setVersion", &Application::setVersion, static_cast<Application*>(&g_app));
528 g_lua.bindSingletonFunction("g_app", "isRunning", &Application::isRunning, static_cast<Application*>(&g_app));
529 g_lua.bindSingletonFunction("g_app", "isStopping", &Application::isStopping, static_cast<Application*>(&g_app));
530 g_lua.bindSingletonFunction("g_app", "getName", &Application::getName, static_cast<Application*>(&g_app));
531 g_lua.bindSingletonFunction("g_app", "getCompactName", &Application::getCompactName, static_cast<Application*>(&g_app));
532 g_lua.bindSingletonFunction("g_app", "getVersion", &Application::getVersion, static_cast<Application*>(&g_app));
533 g_lua.bindSingletonFunction("g_app", "getBuildCompiler", &Application::getBuildCompiler, static_cast<Application*>(&g_app));
534 g_lua.bindSingletonFunction("g_app", "getBuildDate", &Application::getBuildDate, static_cast<Application*>(&g_app));
535 g_lua.bindSingletonFunction("g_app", "getBuildRevision", &Application::getBuildRevision, static_cast<Application*>(&g_app));
536 g_lua.bindSingletonFunction("g_app", "getBuildCommit", &Application::getBuildCommit, static_cast<Application*>(&g_app));
537 g_lua.bindSingletonFunction("g_app", "getBuildType", &Application::getBuildType, static_cast<Application*>(&g_app));
538 g_lua.bindSingletonFunction("g_app", "getBuildArch", &Application::getBuildArch, static_cast<Application*>(&g_app));
539 g_lua.bindSingletonFunction("g_app", "getOs", &Application::getOs, static_cast<Application*>(&g_app));
540 g_lua.bindSingletonFunction("g_app", "getStartupOptions", &Application::getStartupOptions, static_cast<Application*>(&g_app));
541 g_lua.bindSingletonFunction("g_app", "exit", &Application::exit, static_cast<Application*>(&g_app));
542
543
544 // Crypt
545 g_lua.registerSingletonClass("g_crypt");
546 g_lua.bindSingletonFunction("g_crypt", "genUUID", &Crypt::genUUID, &g_crypt);
547 g_lua.bindSingletonFunction("g_crypt", "setMachineUUID", &Crypt::setMachineUUID, &g_crypt);
548 g_lua.bindSingletonFunction("g_crypt", "getMachineUUID", &Crypt::getMachineUUID, &g_crypt);
549 g_lua.bindSingletonFunction("g_crypt", "encrypt", &Crypt::encrypt, &g_crypt);
550 g_lua.bindSingletonFunction("g_crypt", "decrypt", &Crypt::decrypt, &g_crypt);
551 g_lua.bindSingletonFunction("g_crypt", "sha1Encode", &Crypt::sha1Encode, &g_crypt);
552 g_lua.bindSingletonFunction("g_crypt", "md5Encode", &Crypt::md5Encode, &g_crypt);
553 g_lua.bindSingletonFunction("g_crypt", "rsaGenerateKey", &Crypt::rsaGenerateKey, &g_crypt);
554 g_lua.bindSingletonFunction("g_crypt", "rsaSetPublicKey", &Crypt::rsaSetPublicKey, &g_crypt);
555 g_lua.bindSingletonFunction("g_crypt", "rsaSetPrivateKey", &Crypt::rsaSetPrivateKey, &g_crypt);
556 g_lua.bindSingletonFunction("g_crypt", "rsaCheckKey", &Crypt::rsaCheckKey, &g_crypt);
557 g_lua.bindSingletonFunction("g_crypt", "rsaGetSize", &Crypt::rsaGetSize, &g_crypt);
558
559
560 // Clock
561 g_lua.registerSingletonClass("g_clock");
562 g_lua.bindSingletonFunction("g_clock", "micros", &Clock::micros, &g_clock);
563 g_lua.bindSingletonFunction("g_clock", "millis", &Clock::millis, &g_clock);
564 g_lua.bindSingletonFunction("g_clock", "seconds", &Clock::seconds, &g_clock);
565
566
567 // ConfigManager
568 g_lua.registerSingletonClass("g_configs");
569 g_lua.bindSingletonFunction("g_configs", "load", &ConfigManager::load, &g_configs);
570 g_lua.bindSingletonFunction("g_configs", "save", &ConfigManager::save, &g_configs);
571 g_lua.bindSingletonFunction("g_configs", "set", &ConfigManager::set, &g_configs);
572 g_lua.bindSingletonFunction("g_configs", "setList", &ConfigManager::setList, &g_configs);
573 g_lua.bindSingletonFunction("g_configs", "get", &ConfigManager::get, &g_configs);
574 g_lua.bindSingletonFunction("g_configs", "getList", &ConfigManager::getList, &g_configs);
575 g_lua.bindSingletonFunction("g_configs", "exists", &ConfigManager::exists, &g_configs);
576 g_lua.bindSingletonFunction("g_configs", "remove", &ConfigManager::remove, &g_configs);
577 g_lua.bindSingletonFunction("g_configs", "setNode", &ConfigManager::setNode, &g_configs);
578 g_lua.bindSingletonFunction("g_configs", "mergeNode", &ConfigManager::mergeNode, &g_configs);
579 g_lua.bindSingletonFunction("g_configs", "getNode", &ConfigManager::getNode, &g_configs);
580
581
582 // Logger
583 g_lua.registerSingletonClass("g_logger");
584 g_lua.bindSingletonFunction("g_logger", "log", &Logger::log, &g_logger);
585 g_lua.bindSingletonFunction("g_logger", "fireOldMessages", &Logger::fireOldMessages, &g_logger);
586 g_lua.bindSingletonFunction("g_logger", "setLogFile", &Logger::setLogFile, &g_logger);
587 g_lua.bindSingletonFunction("g_logger", "setOnLog", &Logger::setOnLog, &g_logger);
588 g_lua.bindSingletonFunction("g_logger", "debug", &Logger::debug, &g_logger);
589 g_lua.bindSingletonFunction("g_logger", "info", &Logger::info, &g_logger);
590 g_lua.bindSingletonFunction("g_logger", "warning", &Logger::warning, &g_logger);
591 g_lua.bindSingletonFunction("g_logger", "error", &Logger::error, &g_logger);
592 g_lua.bindSingletonFunction("g_logger", "fatal", &Logger::fatal, &g_logger);
593
594
595 // ModuleManager
596 g_lua.registerSingletonClass("g_modules");
597 g_lua.bindSingletonFunction("g_modules", "discoverModules", &ModuleManager::discoverModules, &g_modules);
598 g_lua.bindSingletonFunction("g_modules", "autoLoadModules", &ModuleManager::autoLoadModules, &g_modules);
599 g_lua.bindSingletonFunction("g_modules", "discoverModule", &ModuleManager::discoverModule, &g_modules);
600 g_lua.bindSingletonFunction("g_modules", "ensureModuleLoaded", &ModuleManager::ensureModuleLoaded, &g_modules);
601 g_lua.bindSingletonFunction("g_modules", "unloadModules", &ModuleManager::unloadModules, &g_modules);
602 g_lua.bindSingletonFunction("g_modules", "reloadModules", &ModuleManager::reloadModules, &g_modules);
603 g_lua.bindSingletonFunction("g_modules", "getModule", &ModuleManager::getModule, &g_modules);
604 g_lua.bindSingletonFunction("g_modules", "getModules", &ModuleManager::getModules, &g_modules);
605
606
607 // EventDispatcher
608 g_lua.registerSingletonClass("g_dispatcher");
609 g_lua.bindSingletonFunction("g_dispatcher", "addEvent", &EventDispatcher::addEvent, &g_dispatcher);
610 g_lua.bindSingletonFunction("g_dispatcher", "scheduleEvent", &EventDispatcher::scheduleEvent, &g_dispatcher);
611 g_lua.bindSingletonFunction("g_dispatcher", "cycleEvent", &EventDispatcher::cycleEvent, &g_dispatcher);
612
613
614 // ResourceManager
615 g_lua.registerSingletonClass("g_resources");
616 g_lua.bindSingletonFunction("g_resources", "addSearchPath", &ResourceManager::addSearchPath, &g_resources);
617 g_lua.bindSingletonFunction("g_resources", "setupUserWriteDir", &ResourceManager::setupUserWriteDir, &g_resources);
618 g_lua.bindSingletonFunction("g_resources", "setWriteDir", &ResourceManager::setWriteDir, &g_resources);
619 g_lua.bindSingletonFunction("g_resources", "searchAndAddPackages", &ResourceManager::searchAndAddPackages, &g_resources);
620 g_lua.bindSingletonFunction("g_resources", "removeSearchPath", &ResourceManager::removeSearchPath, &g_resources);
621 g_lua.bindSingletonFunction("g_resources", "fileExists", &ResourceManager::fileExists, &g_resources);
622 g_lua.bindSingletonFunction("g_resources", "directoryExists", &ResourceManager::directoryExists, &g_resources);
623 g_lua.bindSingletonFunction("g_resources", "getRealDir", &ResourceManager::getRealDir, &g_resources);
624 g_lua.bindSingletonFunction("g_resources", "getWorkDir", &ResourceManager::getWorkDir, &g_resources);
625 g_lua.bindSingletonFunction("g_resources", "getSearchPaths", &ResourceManager::getSearchPaths, &g_resources);
626 g_lua.bindSingletonFunction("g_resources", "listDirectoryFiles", &ResourceManager::listDirectoryFiles, &g_resources);
627 g_lua.bindSingletonFunction("g_resources", "readFileContents", &ResourceManager::readFileContents, &g_resources);
628 g_lua.bindSingletonFunction("g_resources", "guessFilePath", &ResourceManager::guessFilePath, &g_resources);
629 g_lua.bindSingletonFunction("g_resources", "isFileType", &ResourceManager::isFileType, &g_resources);
630 g_lua.bindSingletonFunction("g_resources", "getFileTime", &ResourceManager::getFileTime, &g_resources);
631
632
633 // Module
634 g_lua.registerClass<Module>();
635 g_lua.bindClassMemberFunction<Module>("load", &Module::load);
636 g_lua.bindClassMemberFunction<Module>("unload", &Module::unload);
637 g_lua.bindClassMemberFunction<Module>("reload", &Module::reload);
638 g_lua.bindClassMemberFunction<Module>("canReload", &Module::canReload);
639 g_lua.bindClassMemberFunction<Module>("canUnload", &Module::canUnload);
640 g_lua.bindClassMemberFunction<Module>("isLoaded", &Module::isLoaded);
641 g_lua.bindClassMemberFunction<Module>("isReloadble", &Module::isReloadable);
642 g_lua.bindClassMemberFunction<Module>("isSandboxed", &Module::isSandboxed);
643 g_lua.bindClassMemberFunction<Module>("getDescription", &Module::getDescription);
644 g_lua.bindClassMemberFunction<Module>("getName", &Module::getName);
645 g_lua.bindClassMemberFunction<Module>("getAuthor", &Module::getAuthor);
646 g_lua.bindClassMemberFunction<Module>("getWebsite", &Module::getWebsite);
647 g_lua.bindClassMemberFunction<Module>("getVersion", &Module::getVersion);
648 g_lua.bindClassMemberFunction<Module>("getSandbox", &Module::getSandbox);
649 g_lua.bindClassMemberFunction<Module>("isAutoLoad", &Module::isAutoLoad);
650 g_lua.bindClassMemberFunction<Module>("getAutoLoadPriority", &Module::getAutoLoadPriority);
651
652
653 // Event
654 g_lua.registerClass<Event>();
655 g_lua.bindClassMemberFunction<Event>("cancel", &Event::cancel);
656 g_lua.bindClassMemberFunction<Event>("execute", &Event::execute);
657 g_lua.bindClassMemberFunction<Event>("isCanceled", &Event::isCanceled);
658 g_lua.bindClassMemberFunction<Event>("isExecuted", &Event::isExecuted);
659
660
661 // ScheduledEvent
662 g_lua.registerClass<ScheduledEvent, Event>();
663 g_lua.bindClassMemberFunction<ScheduledEvent>("nextCycle", &ScheduledEvent::nextCycle);
664 g_lua.bindClassMemberFunction<ScheduledEvent>("ticks", &ScheduledEvent::ticks);
665 g_lua.bindClassMemberFunction<ScheduledEvent>("remainingTicks", &ScheduledEvent::remainingTicks);
666 g_lua.bindClassMemberFunction<ScheduledEvent>("delay", &ScheduledEvent::delay);
667 g_lua.bindClassMemberFunction<ScheduledEvent>("cyclesExecuted", &ScheduledEvent::cyclesExecuted);
668 g_lua.bindClassMemberFunction<ScheduledEvent>("maxCycles", &ScheduledEvent::maxCycles);
669
670
671#ifdef FW_GRAPHICS
672 // GraphicalApplication
673 g_lua.bindSingletonFunction("g_app", "setForegroundPaneMaxFps", &GraphicalApplication::setForegroundPaneMaxFps, &g_app);
674 g_lua.bindSingletonFunction("g_app", "setBackgroundPaneMaxFps", &GraphicalApplication::setBackgroundPaneMaxFps, &g_app);
675 g_lua.bindSingletonFunction("g_app", "isOnInputEvent", &GraphicalApplication::isOnInputEvent, &g_app);
676 g_lua.bindSingletonFunction("g_app", "getForegroundPaneFps", &GraphicalApplication::getForegroundPaneFps, &g_app);
677 g_lua.bindSingletonFunction("g_app", "getBackgroundPaneFps", &GraphicalApplication::getBackgroundPaneFps, &g_app);
678 g_lua.bindSingletonFunction("g_app", "getForegroundPaneMaxFps", &GraphicalApplication::getForegroundPaneMaxFps, &g_app);
679 g_lua.bindSingletonFunction("g_app", "getBackgroundPaneMaxFps", &GraphicalApplication::getBackgroundPaneMaxFps, &g_app);
680
681
682 // PlatformWindow
683 g_lua.registerSingletonClass("g_window");
684 g_lua.bindSingletonFunction("g_window", "move", &PlatformWindow::move, &g_window);
685 g_lua.bindSingletonFunction("g_window", "resize", &PlatformWindow::resize, &g_window);
686 g_lua.bindSingletonFunction("g_window", "show", &PlatformWindow::show, &g_window);
687 g_lua.bindSingletonFunction("g_window", "hide", &PlatformWindow::hide, &g_window);
688 g_lua.bindSingletonFunction("g_window", "poll", &PlatformWindow::poll, &g_window);
689 g_lua.bindSingletonFunction("g_window", "maximize", &PlatformWindow::maximize, &g_window);
690 g_lua.bindSingletonFunction("g_window", "restoreMouseCursor", &PlatformWindow::restoreMouseCursor, &g_window);
691 g_lua.bindSingletonFunction("g_window", "showMouse", &PlatformWindow::showMouse, &g_window);
692 g_lua.bindSingletonFunction("g_window", "hideMouse", &PlatformWindow::hideMouse, &g_window);
693 g_lua.bindSingletonFunction("g_window", "setTitle", &PlatformWindow::setTitle, &g_window);
694 g_lua.bindSingletonFunction("g_window", "setMouseCursor", &PlatformWindow::setMouseCursor, &g_window);
695 g_lua.bindSingletonFunction("g_window", "setMinimumSize", &PlatformWindow::setMinimumSize, &g_window);
696 g_lua.bindSingletonFunction("g_window", "setFullscreen", &PlatformWindow::setFullscreen, &g_window);
697 g_lua.bindSingletonFunction("g_window", "setVerticalSync", &PlatformWindow::setVerticalSync, &g_window);
698 g_lua.bindSingletonFunction("g_window", "setIcon", &PlatformWindow::setIcon, &g_window);
699 g_lua.bindSingletonFunction("g_window", "setClipboardText", &PlatformWindow::setClipboardText, &g_window);
700 g_lua.bindSingletonFunction("g_window", "getDisplaySize", &PlatformWindow::getDisplaySize, &g_window);
701 g_lua.bindSingletonFunction("g_window", "getClipboardText", &PlatformWindow::getClipboardText, &g_window);
702 g_lua.bindSingletonFunction("g_window", "getPlatformType", &PlatformWindow::getPlatformType, &g_window);
703 g_lua.bindSingletonFunction("g_window", "getDisplayWidth", &PlatformWindow::getDisplayWidth, &g_window);
704 g_lua.bindSingletonFunction("g_window", "getDisplayHeight", &PlatformWindow::getDisplayHeight, &g_window);
705 g_lua.bindSingletonFunction("g_window", "getUnmaximizedSize", &PlatformWindow::getUnmaximizedSize, &g_window);
706 g_lua.bindSingletonFunction("g_window", "getSize", &PlatformWindow::getSize, &g_window);
707 g_lua.bindSingletonFunction("g_window", "getWidth", &PlatformWindow::getWidth, &g_window);
708 g_lua.bindSingletonFunction("g_window", "getHeight", &PlatformWindow::getHeight, &g_window);
709 g_lua.bindSingletonFunction("g_window", "getUnmaximizedPos", &PlatformWindow::getUnmaximizedPos, &g_window);
710 g_lua.bindSingletonFunction("g_window", "getPosition", &PlatformWindow::getPosition, &g_window);
711 g_lua.bindSingletonFunction("g_window", "getX", &PlatformWindow::getX, &g_window);
712 g_lua.bindSingletonFunction("g_window", "getY", &PlatformWindow::getY, &g_window);
713 g_lua.bindSingletonFunction("g_window", "getMousePosition", &PlatformWindow::getMousePosition, &g_window);
714 g_lua.bindSingletonFunction("g_window", "getKeyboardModifiers", &PlatformWindow::getKeyboardModifiers, &g_window);
715 g_lua.bindSingletonFunction("g_window", "isKeyPressed", &PlatformWindow::isKeyPressed, &g_window);
716 g_lua.bindSingletonFunction("g_window", "isMouseButtonPressed", &PlatformWindow::isMouseButtonPressed, &g_window);
717 g_lua.bindSingletonFunction("g_window", "isVisible", &PlatformWindow::isVisible, &g_window);
718 g_lua.bindSingletonFunction("g_window", "isFullscreen", &PlatformWindow::isFullscreen, &g_window);
719 g_lua.bindSingletonFunction("g_window", "isMaximized", &PlatformWindow::isMaximized, &g_window);
720 g_lua.bindSingletonFunction("g_window", "hasFocus", &PlatformWindow::hasFocus, &g_window);
721
722
723 // Input
724 g_lua.registerSingletonClass("g_mouse");
725 g_lua.bindSingletonFunction("g_mouse", "loadCursors", &Mouse::loadCursors, &g_mouse);
726 g_lua.bindSingletonFunction("g_mouse", "addCursor", &Mouse::addCursor, &g_mouse);
727 g_lua.bindSingletonFunction("g_mouse", "pushCursor", &Mouse::pushCursor, &g_mouse);
728 g_lua.bindSingletonFunction("g_mouse", "popCursor", &Mouse::popCursor, &g_mouse);
729 g_lua.bindSingletonFunction("g_mouse", "isCursorChanged", &Mouse::isCursorChanged, &g_mouse);
730 g_lua.bindSingletonFunction("g_mouse", "isPressed", &Mouse::isPressed, &g_mouse);
731
732
733 // Graphics
734 g_lua.registerSingletonClass("g_graphics");
735 g_lua.bindSingletonFunction("g_graphics", "isPainterEngineAvailable", &Graphics::isPainterEngineAvailable, &g_graphics);
736 g_lua.bindSingletonFunction("g_graphics", "selectPainterEngine", &Graphics::selectPainterEngine, &g_graphics);
737 g_lua.bindSingletonFunction("g_graphics", "canCacheBackbuffer", &Graphics::canCacheBackbuffer, &g_graphics);
738 g_lua.bindSingletonFunction("g_graphics", "canUseShaders", &Graphics::canUseShaders, &g_graphics);
739 g_lua.bindSingletonFunction("g_graphics", "shouldUseShaders", &Graphics::shouldUseShaders, &g_graphics);
740 g_lua.bindSingletonFunction("g_graphics", "setShouldUseShaders", &Graphics::setShouldUseShaders, &g_graphics);
741 g_lua.bindSingletonFunction("g_graphics", "getPainterEngine", &Graphics::getPainterEngine, &g_graphics);
742 g_lua.bindSingletonFunction("g_graphics", "getViewportSize", &Graphics::getViewportSize, &g_graphics);
743 g_lua.bindSingletonFunction("g_graphics", "getVendor", &Graphics::getVendor, &g_graphics);
744 g_lua.bindSingletonFunction("g_graphics", "getRenderer", &Graphics::getRenderer, &g_graphics);
745 g_lua.bindSingletonFunction("g_graphics", "getVersion", &Graphics::getVersion, &g_graphics);
746
747
748 // Textures
749 g_lua.registerSingletonClass("g_textures");
750 g_lua.bindSingletonFunction("g_textures", "preload", &TextureManager::preload, &g_textures);
751 g_lua.bindSingletonFunction("g_textures", "clearCache", &TextureManager::clearCache, &g_textures);
752 g_lua.bindSingletonFunction("g_textures", "liveReload", &TextureManager::liveReload, &g_textures);
753
754
755 // UI
756 g_lua.registerSingletonClass("g_ui");
757 g_lua.bindSingletonFunction("g_ui", "clearStyles", &UIManager::clearStyles, &g_ui);
758 g_lua.bindSingletonFunction("g_ui", "importStyle", &UIManager::importStyle, &g_ui);
759 g_lua.bindSingletonFunction("g_ui", "getStyle", &UIManager::getStyle, &g_ui);
760 g_lua.bindSingletonFunction("g_ui", "getStyleClass", &UIManager::getStyleClass, &g_ui);
761 g_lua.bindSingletonFunction("g_ui", "loadUI", &UIManager::loadUI, &g_ui);
762 g_lua.bindSingletonFunction("g_ui", "displayUI", &UIManager::displayUI, &g_ui);
763 g_lua.bindSingletonFunction("g_ui", "createWidget", &UIManager::createWidget, &g_ui);
764 g_lua.bindSingletonFunction("g_ui", "createWidgetFromOTML", &UIManager::createWidgetFromOTML, &g_ui);
765 g_lua.bindSingletonFunction("g_ui", "getRootWidget", &UIManager::getRootWidget, &g_ui);
766 g_lua.bindSingletonFunction("g_ui", "getDraggingWidget", &UIManager::getDraggingWidget, &g_ui);
767 g_lua.bindSingletonFunction("g_ui", "getPressedWidget", &UIManager::getPressedWidget, &g_ui);
768 g_lua.bindSingletonFunction("g_ui", "setDebugBoxesDrawing", &UIManager::setDebugBoxesDrawing, &g_ui);
769 g_lua.bindSingletonFunction("g_ui", "isDrawingDebugBoxes", &UIManager::isDrawingDebugBoxes, &g_ui);
770 g_lua.bindSingletonFunction("g_ui", "isMouseGrabbed", &UIManager::isMouseGrabbed, &g_ui);
771 g_lua.bindSingletonFunction("g_ui", "isKeyboardGrabbed", &UIManager::isKeyboardGrabbed, &g_ui);
772
773
774 // FontManager
775 g_lua.registerSingletonClass("g_fonts");
776 g_lua.bindSingletonFunction("g_fonts", "clearFonts", &FontManager::clearFonts, &g_fonts);
777 g_lua.bindSingletonFunction("g_fonts", "importFont", &FontManager::importFont, &g_fonts);
778 g_lua.bindSingletonFunction("g_fonts", "fontExists", &FontManager::fontExists, &g_fonts);
779 g_lua.bindSingletonFunction("g_fonts", "setDefaultFont", &FontManager::setDefaultFont, &g_fonts);
780
781
782 // ParticleManager
783 g_lua.registerSingletonClass("g_particles");
784 g_lua.bindSingletonFunction("g_particles", "importParticle", &ParticleManager::importParticle, &g_particles);
785 g_lua.bindSingletonFunction("g_particles", "getEffectsTypes", &ParticleManager::getEffectsTypes, &g_particles);
786
787
788 // UIWidget
789 g_lua.registerClass<UIWidget>();
790 g_lua.bindClassStaticFunction<UIWidget>("create", []{ return UIWidgetPtr(new UIWidget); });
791 g_lua.bindClassMemberFunction<UIWidget>("addChild", &UIWidget::addChild);
792 g_lua.bindClassMemberFunction<UIWidget>("insertChild", &UIWidget::insertChild);
793 g_lua.bindClassMemberFunction<UIWidget>("removeChild", &UIWidget::removeChild);
794 g_lua.bindClassMemberFunction<UIWidget>("focusChild", &UIWidget::focusChild);
795 g_lua.bindClassMemberFunction<UIWidget>("focusNextChild", &UIWidget::focusNextChild);
796 g_lua.bindClassMemberFunction<UIWidget>("focusPreviousChild", &UIWidget::focusPreviousChild);
797 g_lua.bindClassMemberFunction<UIWidget>("lowerChild", &UIWidget::lowerChild);
798 g_lua.bindClassMemberFunction<UIWidget>("raiseChild", &UIWidget::raiseChild);
799 g_lua.bindClassMemberFunction<UIWidget>("moveChildToIndex", &UIWidget::moveChildToIndex);
800 g_lua.bindClassMemberFunction<UIWidget>("lockChild", &UIWidget::lockChild);
801 g_lua.bindClassMemberFunction<UIWidget>("unlockChild", &UIWidget::unlockChild);
802 g_lua.bindClassMemberFunction<UIWidget>("mergeStyle", &UIWidget::mergeStyle);
803 g_lua.bindClassMemberFunction<UIWidget>("applyStyle", &UIWidget::applyStyle);
804 g_lua.bindClassMemberFunction<UIWidget>("addAnchor", &UIWidget::addAnchor);
805 g_lua.bindClassMemberFunction<UIWidget>("removeAnchor", &UIWidget::removeAnchor);
806 g_lua.bindClassMemberFunction<UIWidget>("fill", &UIWidget::fill);
807 g_lua.bindClassMemberFunction<UIWidget>("centerIn", &UIWidget::centerIn);
808 g_lua.bindClassMemberFunction<UIWidget>("breakAnchors", &UIWidget::breakAnchors);
809 g_lua.bindClassMemberFunction<UIWidget>("updateParentLayout", &UIWidget::updateParentLayout);
810 g_lua.bindClassMemberFunction<UIWidget>("updateLayout", &UIWidget::updateLayout);
811 g_lua.bindClassMemberFunction<UIWidget>("lock", &UIWidget::lock);
812 g_lua.bindClassMemberFunction<UIWidget>("unlock", &UIWidget::unlock);
813 g_lua.bindClassMemberFunction<UIWidget>("focus", &UIWidget::focus);
814 g_lua.bindClassMemberFunction<UIWidget>("lower", &UIWidget::lower);
815 g_lua.bindClassMemberFunction<UIWidget>("raise", &UIWidget::raise);
816 g_lua.bindClassMemberFunction<UIWidget>("grabMouse", &UIWidget::grabMouse);
817 g_lua.bindClassMemberFunction<UIWidget>("ungrabMouse", &UIWidget::ungrabMouse);
818 g_lua.bindClassMemberFunction<UIWidget>("grabKeyboard", &UIWidget::grabKeyboard);
819 g_lua.bindClassMemberFunction<UIWidget>("ungrabKeyboard", &UIWidget::ungrabKeyboard);
820 g_lua.bindClassMemberFunction<UIWidget>("bindRectToParent", &UIWidget::bindRectToParent);
821 g_lua.bindClassMemberFunction<UIWidget>("destroy", &UIWidget::destroy);
822 g_lua.bindClassMemberFunction<UIWidget>("destroyChildren", &UIWidget::destroyChildren);
823 g_lua.bindClassMemberFunction<UIWidget>("setId", &UIWidget::setId);
824 g_lua.bindClassMemberFunction<UIWidget>("setParent", &UIWidget::setParent);
825 g_lua.bindClassMemberFunction<UIWidget>("setLayout", &UIWidget::setLayout);
826 g_lua.bindClassMemberFunction<UIWidget>("setRect", &UIWidget::setRect);
827 g_lua.bindClassMemberFunction<UIWidget>("setStyle", &UIWidget::setStyle);
828 g_lua.bindClassMemberFunction<UIWidget>("setStyleFromNode", &UIWidget::setStyleFromNode);
829 g_lua.bindClassMemberFunction<UIWidget>("setEnabled", &UIWidget::setEnabled);
830 g_lua.bindClassMemberFunction<UIWidget>("setVisible", &UIWidget::setVisible);
831 g_lua.bindClassMemberFunction<UIWidget>("setOn", &UIWidget::setOn);
832 g_lua.bindClassMemberFunction<UIWidget>("setChecked", &UIWidget::setChecked);
833 g_lua.bindClassMemberFunction<UIWidget>("setFocusable", &UIWidget::setFocusable);
834 g_lua.bindClassMemberFunction<UIWidget>("setPhantom", &UIWidget::setPhantom);
835 g_lua.bindClassMemberFunction<UIWidget>("setDraggable", &UIWidget::setDraggable);
836 g_lua.bindClassMemberFunction<UIWidget>("setFixedSize", &UIWidget::setFixedSize);
837 g_lua.bindClassMemberFunction<UIWidget>("setClipping", &UIWidget::setClipping);
838 g_lua.bindClassMemberFunction<UIWidget>("setLastFocusReason", &UIWidget::setLastFocusReason);
839 g_lua.bindClassMemberFunction<UIWidget>("setAutoFocusPolicy", &UIWidget::setAutoFocusPolicy);
840 g_lua.bindClassMemberFunction<UIWidget>("setAutoRepeatDelay", &UIWidget::setAutoRepeatDelay);
841 g_lua.bindClassMemberFunction<UIWidget>("setVirtualOffset", &UIWidget::setVirtualOffset);
842 g_lua.bindClassMemberFunction<UIWidget>("isVisible", &UIWidget::isVisible);
843 g_lua.bindClassMemberFunction<UIWidget>("isChildLocked", &UIWidget::isChildLocked);
844 g_lua.bindClassMemberFunction<UIWidget>("hasChild", &UIWidget::hasChild);
845 g_lua.bindClassMemberFunction<UIWidget>("getChildIndex", &UIWidget::getChildIndex);
846 g_lua.bindClassMemberFunction<UIWidget>("getMarginRect", &UIWidget::getMarginRect);
847 g_lua.bindClassMemberFunction<UIWidget>("getPaddingRect", &UIWidget::getPaddingRect);
848 g_lua.bindClassMemberFunction<UIWidget>("getChildrenRect", &UIWidget::getChildrenRect);
849 g_lua.bindClassMemberFunction<UIWidget>("getAnchoredLayout", &UIWidget::getAnchoredLayout);
850 g_lua.bindClassMemberFunction<UIWidget>("getRootParent", &UIWidget::getRootParent);
851 g_lua.bindClassMemberFunction<UIWidget>("getChildAfter", &UIWidget::getChildAfter);
852 g_lua.bindClassMemberFunction<UIWidget>("getChildBefore", &UIWidget::getChildBefore);
853 g_lua.bindClassMemberFunction<UIWidget>("getChildById", &UIWidget::getChildById);
854 g_lua.bindClassMemberFunction<UIWidget>("getChildByPos", &UIWidget::getChildByPos);
855 g_lua.bindClassMemberFunction<UIWidget>("getChildByIndex", &UIWidget::getChildByIndex);
856 g_lua.bindClassMemberFunction<UIWidget>("recursiveGetChildById", &UIWidget::recursiveGetChildById);
857 g_lua.bindClassMemberFunction<UIWidget>("recursiveGetChildByPos", &UIWidget::recursiveGetChildByPos);
858 g_lua.bindClassMemberFunction<UIWidget>("recursiveGetChildren", &UIWidget::recursiveGetChildren);
859 g_lua.bindClassMemberFunction<UIWidget>("recursiveGetChildrenByPos", &UIWidget::recursiveGetChildrenByPos);
860 g_lua.bindClassMemberFunction<UIWidget>("recursiveGetChildrenByMarginPos", &UIWidget::recursiveGetChildrenByMarginPos);
861 g_lua.bindClassMemberFunction<UIWidget>("backwardsGetWidgetById", &UIWidget::backwardsGetWidgetById);
862 g_lua.bindClassMemberFunction<UIWidget>("resize", &UIWidget::resize);
863 g_lua.bindClassMemberFunction<UIWidget>("move", &UIWidget::move);
864 g_lua.bindClassMemberFunction<UIWidget>("rotate", &UIWidget::rotate);
865 g_lua.bindClassMemberFunction<UIWidget>("hide", &UIWidget::hide);
866 g_lua.bindClassMemberFunction<UIWidget>("show", &UIWidget::show);
867 g_lua.bindClassMemberFunction<UIWidget>("disable", &UIWidget::disable);
868 g_lua.bindClassMemberFunction<UIWidget>("enable", &UIWidget::enable);
869 g_lua.bindClassMemberFunction<UIWidget>("isActive", &UIWidget::isActive);
870 g_lua.bindClassMemberFunction<UIWidget>("isEnabled", &UIWidget::isEnabled);
871 g_lua.bindClassMemberFunction<UIWidget>("isDisabled", &UIWidget::isDisabled);
872 g_lua.bindClassMemberFunction<UIWidget>("isFocused", &UIWidget::isFocused);
873 g_lua.bindClassMemberFunction<UIWidget>("isHovered", &UIWidget::isHovered);
874 g_lua.bindClassMemberFunction<UIWidget>("isPressed", &UIWidget::isPressed);
875 g_lua.bindClassMemberFunction<UIWidget>("isFirst", &UIWidget::isFirst);
876 g_lua.bindClassMemberFunction<UIWidget>("isMiddle", &UIWidget::isMiddle);
877 g_lua.bindClassMemberFunction<UIWidget>("isLast", &UIWidget::isLast);
878 g_lua.bindClassMemberFunction<UIWidget>("isAlternate", &UIWidget::isAlternate);
879 g_lua.bindClassMemberFunction<UIWidget>("isChecked", &UIWidget::isChecked);
880 g_lua.bindClassMemberFunction<UIWidget>("isOn", &UIWidget::isOn);
881 g_lua.bindClassMemberFunction<UIWidget>("isDragging", &UIWidget::isDragging);
882 g_lua.bindClassMemberFunction<UIWidget>("isHidden", &UIWidget::isHidden);
883 g_lua.bindClassMemberFunction<UIWidget>("isExplicitlyEnabled", &UIWidget::isExplicitlyEnabled);
884 g_lua.bindClassMemberFunction<UIWidget>("isExplicitlyVisible", &UIWidget::isExplicitlyVisible);
885 g_lua.bindClassMemberFunction<UIWidget>("isFocusable", &UIWidget::isFocusable);
886 g_lua.bindClassMemberFunction<UIWidget>("isPhantom", &UIWidget::isPhantom);
887 g_lua.bindClassMemberFunction<UIWidget>("isDraggable", &UIWidget::isDraggable);
888 g_lua.bindClassMemberFunction<UIWidget>("isFixedSize", &UIWidget::isFixedSize);
889 g_lua.bindClassMemberFunction<UIWidget>("isClipping", &UIWidget::isClipping);
890 g_lua.bindClassMemberFunction<UIWidget>("isDestroyed", &UIWidget::isDestroyed);
891 g_lua.bindClassMemberFunction<UIWidget>("hasChildren", &UIWidget::hasChildren);
892 g_lua.bindClassMemberFunction<UIWidget>("containsMarginPoint", &UIWidget::containsMarginPoint);
893 g_lua.bindClassMemberFunction<UIWidget>("containsPaddingPoint", &UIWidget::containsPaddingPoint);
894 g_lua.bindClassMemberFunction<UIWidget>("containsPoint", &UIWidget::containsPoint);
895 g_lua.bindClassMemberFunction<UIWidget>("getId", &UIWidget::getId);
896 g_lua.bindClassMemberFunction<UIWidget>("getParent", &UIWidget::getParent);
897 g_lua.bindClassMemberFunction<UIWidget>("getFocusedChild", &UIWidget::getFocusedChild);
898 g_lua.bindClassMemberFunction<UIWidget>("getChildren", &UIWidget::getChildren);
899 g_lua.bindClassMemberFunction<UIWidget>("getFirstChild", &UIWidget::getFirstChild);
900 g_lua.bindClassMemberFunction<UIWidget>("getLastChild", &UIWidget::getLastChild);
901 g_lua.bindClassMemberFunction<UIWidget>("getLayout", &UIWidget::getLayout);
902 g_lua.bindClassMemberFunction<UIWidget>("getStyle", &UIWidget::getStyle);
903 g_lua.bindClassMemberFunction<UIWidget>("getChildCount", &UIWidget::getChildCount);
904 g_lua.bindClassMemberFunction<UIWidget>("getLastFocusReason", &UIWidget::getLastFocusReason);
905 g_lua.bindClassMemberFunction<UIWidget>("getAutoFocusPolicy", &UIWidget::getAutoFocusPolicy);
906 g_lua.bindClassMemberFunction<UIWidget>("getAutoRepeatDelay", &UIWidget::getAutoRepeatDelay);
907 g_lua.bindClassMemberFunction<UIWidget>("getVirtualOffset", &UIWidget::getVirtualOffset);
908 g_lua.bindClassMemberFunction<UIWidget>("getStyleName", &UIWidget::getStyleName);
909 g_lua.bindClassMemberFunction<UIWidget>("getLastClickPosition", &UIWidget::getLastClickPosition);
910 g_lua.bindClassMemberFunction<UIWidget>("setX", &UIWidget::setX);
911 g_lua.bindClassMemberFunction<UIWidget>("setY", &UIWidget::setY);
912 g_lua.bindClassMemberFunction<UIWidget>("setWidth", &UIWidget::setWidth);
913 g_lua.bindClassMemberFunction<UIWidget>("setHeight", &UIWidget::setHeight);
914 g_lua.bindClassMemberFunction<UIWidget>("setSize", &UIWidget::setSize);
915 g_lua.bindClassMemberFunction<UIWidget>("setPosition", &UIWidget::setPosition);
916 g_lua.bindClassMemberFunction<UIWidget>("setColor", &UIWidget::setColor);
917 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundColor", &UIWidget::setBackgroundColor);
918 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundOffsetX", &UIWidget::setBackgroundOffsetX);
919 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundOffsetY", &UIWidget::setBackgroundOffsetY);
920 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundOffset", &UIWidget::setBackgroundOffset);
921 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundWidth", &UIWidget::setBackgroundWidth);
922 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundHeight", &UIWidget::setBackgroundHeight);
923 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundSize", &UIWidget::setBackgroundSize);
924 g_lua.bindClassMemberFunction<UIWidget>("setBackgroundRect", &UIWidget::setBackgroundRect);
925 g_lua.bindClassMemberFunction<UIWidget>("setIcon", &UIWidget::setIcon);
926 g_lua.bindClassMemberFunction<UIWidget>("setIconColor", &UIWidget::setIconColor);
927 g_lua.bindClassMemberFunction<UIWidget>("setIconOffsetX", &UIWidget::setIconOffsetX);
928 g_lua.bindClassMemberFunction<UIWidget>("setIconOffsetY", &UIWidget::setIconOffsetY);
929 g_lua.bindClassMemberFunction<UIWidget>("setIconOffset", &UIWidget::setIconOffset);
930 g_lua.bindClassMemberFunction<UIWidget>("setIconWidth", &UIWidget::setIconWidth);
931 g_lua.bindClassMemberFunction<UIWidget>("setIconHeight", &UIWidget::setIconHeight);
932 g_lua.bindClassMemberFunction<UIWidget>("setIconSize", &UIWidget::setIconSize);
933 g_lua.bindClassMemberFunction<UIWidget>("setIconRect", &UIWidget::setIconRect);
934 g_lua.bindClassMemberFunction<UIWidget>("setIconClip", &UIWidget::setIconClip);
935 g_lua.bindClassMemberFunction<UIWidget>("setIconAlign", &UIWidget::setIconAlign);
936 g_lua.bindClassMemberFunction<UIWidget>("setBorderWidth", &UIWidget::setBorderWidth);
937 g_lua.bindClassMemberFunction<UIWidget>("setBorderWidthTop", &UIWidget::setBorderWidthTop);
938 g_lua.bindClassMemberFunction<UIWidget>("setBorderWidthRight", &UIWidget::setBorderWidthRight);
939 g_lua.bindClassMemberFunction<UIWidget>("setBorderWidthBottom", &UIWidget::setBorderWidthBottom);
940 g_lua.bindClassMemberFunction<UIWidget>("setBorderWidthLeft", &UIWidget::setBorderWidthLeft);
941 g_lua.bindClassMemberFunction<UIWidget>("setBorderColor", &UIWidget::setBorderColor);
942 g_lua.bindClassMemberFunction<UIWidget>("setBorderColorTop", &UIWidget::setBorderColorTop);
943 g_lua.bindClassMemberFunction<UIWidget>("setBorderColorRight", &UIWidget::setBorderColorRight);
944 g_lua.bindClassMemberFunction<UIWidget>("setBorderColorBottom", &UIWidget::setBorderColorBottom);
945 g_lua.bindClassMemberFunction<UIWidget>("setBorderColorLeft", &UIWidget::setBorderColorLeft);
946 g_lua.bindClassMemberFunction<UIWidget>("setMargin", &UIWidget::setMargin);
947 g_lua.bindClassMemberFunction<UIWidget>("setMarginHorizontal", &UIWidget::setMarginHorizontal);
948 g_lua.bindClassMemberFunction<UIWidget>("setMarginVertical", &UIWidget::setMarginVertical);
949 g_lua.bindClassMemberFunction<UIWidget>("setMarginTop", &UIWidget::setMarginTop);
950 g_lua.bindClassMemberFunction<UIWidget>("setMarginRight", &UIWidget::setMarginRight);
951 g_lua.bindClassMemberFunction<UIWidget>("setMarginBottom", &UIWidget::setMarginBottom);
952 g_lua.bindClassMemberFunction<UIWidget>("setMarginLeft", &UIWidget::setMarginLeft);
953 g_lua.bindClassMemberFunction<UIWidget>("setPadding", &UIWidget::setPadding);
954 g_lua.bindClassMemberFunction<UIWidget>("setPaddingHorizontal", &UIWidget::setPaddingHorizontal);
955 g_lua.bindClassMemberFunction<UIWidget>("setPaddingVertical", &UIWidget::setPaddingVertical);
956 g_lua.bindClassMemberFunction<UIWidget>("setPaddingTop", &UIWidget::setPaddingTop);
957 g_lua.bindClassMemberFunction<UIWidget>("setPaddingRight", &UIWidget::setPaddingRight);
958 g_lua.bindClassMemberFunction<UIWidget>("setPaddingBottom", &UIWidget::setPaddingBottom);
959 g_lua.bindClassMemberFunction<UIWidget>("setPaddingLeft", &UIWidget::setPaddingLeft);
960 g_lua.bindClassMemberFunction<UIWidget>("setOpacity", &UIWidget::setOpacity);
961 g_lua.bindClassMemberFunction<UIWidget>("setRotation", &UIWidget::setRotation);
962 g_lua.bindClassMemberFunction<UIWidget>("getX", &UIWidget::getX);
963 g_lua.bindClassMemberFunction<UIWidget>("getY", &UIWidget::getY);
964 g_lua.bindClassMemberFunction<UIWidget>("getPosition", &UIWidget::getPosition);
965 g_lua.bindClassMemberFunction<UIWidget>("getWidth", &UIWidget::getWidth);
966 g_lua.bindClassMemberFunction<UIWidget>("getHeight", &UIWidget::getHeight);
967 g_lua.bindClassMemberFunction<UIWidget>("getSize", &UIWidget::getSize);
968 g_lua.bindClassMemberFunction<UIWidget>("getRect", &UIWidget::getRect);
969 g_lua.bindClassMemberFunction<UIWidget>("getColor", &UIWidget::getColor);
970 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundColor", &UIWidget::getBackgroundColor);
971 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundOffsetX", &UIWidget::getBackgroundOffsetX);
972 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundOffsetY", &UIWidget::getBackgroundOffsetY);
973 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundOffset", &UIWidget::getBackgroundOffset);
974 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundWidth", &UIWidget::getBackgroundWidth);
975 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundHeight", &UIWidget::getBackgroundHeight);
976 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundSize", &UIWidget::getBackgroundSize);
977 g_lua.bindClassMemberFunction<UIWidget>("getBackgroundRect", &UIWidget::getBackgroundRect);
978 g_lua.bindClassMemberFunction<UIWidget>("getIconColor", &UIWidget::getIconColor);
979 g_lua.bindClassMemberFunction<UIWidget>("getIconOffsetX", &UIWidget::getIconOffsetX);
980 g_lua.bindClassMemberFunction<UIWidget>("getIconOffsetY", &UIWidget::getIconOffsetY);
981 g_lua.bindClassMemberFunction<UIWidget>("getIconOffset", &UIWidget::getIconOffset);
982 g_lua.bindClassMemberFunction<UIWidget>("getIconWidth", &UIWidget::getIconWidth);
983 g_lua.bindClassMemberFunction<UIWidget>("getIconHeight", &UIWidget::getIconHeight);
984 g_lua.bindClassMemberFunction<UIWidget>("getIconSize", &UIWidget::getIconSize);
985 g_lua.bindClassMemberFunction<UIWidget>("getIconRect", &UIWidget::getIconRect);
986 g_lua.bindClassMemberFunction<UIWidget>("getIconClip", &UIWidget::getIconClip);
987 g_lua.bindClassMemberFunction<UIWidget>("getIconAlign", &UIWidget::getIconAlign);
988 g_lua.bindClassMemberFunction<UIWidget>("getBorderTopColor", &UIWidget::getBorderTopColor);
989 g_lua.bindClassMemberFunction<UIWidget>("getBorderRightColor", &UIWidget::getBorderRightColor);
990 g_lua.bindClassMemberFunction<UIWidget>("getBorderBottomColor", &UIWidget::getBorderBottomColor);
991 g_lua.bindClassMemberFunction<UIWidget>("getBorderLeftColor", &UIWidget::getBorderLeftColor);
992 g_lua.bindClassMemberFunction<UIWidget>("getBorderTopWidth", &UIWidget::getBorderTopWidth);
993 g_lua.bindClassMemberFunction<UIWidget>("getBorderRightWidth", &UIWidget::getBorderRightWidth);
994 g_lua.bindClassMemberFunction<UIWidget>("getBorderBottomWidth", &UIWidget::getBorderBottomWidth);
995 g_lua.bindClassMemberFunction<UIWidget>("getBorderLeftWidth", &UIWidget::getBorderLeftWidth);
996 g_lua.bindClassMemberFunction<UIWidget>("getMarginTop", &UIWidget::getMarginTop);
997 g_lua.bindClassMemberFunction<UIWidget>("getMarginRight", &UIWidget::getMarginRight);
998 g_lua.bindClassMemberFunction<UIWidget>("getMarginBottom", &UIWidget::getMarginBottom);
999 g_lua.bindClassMemberFunction<UIWidget>("getMarginLeft", &UIWidget::getMarginLeft);
1000 g_lua.bindClassMemberFunction<UIWidget>("getPaddingTop", &UIWidget::getPaddingTop);
1001 g_lua.bindClassMemberFunction<UIWidget>("getPaddingRight", &UIWidget::getPaddingRight);
1002 g_lua.bindClassMemberFunction<UIWidget>("getPaddingBottom", &UIWidget::getPaddingBottom);
1003 g_lua.bindClassMemberFunction<UIWidget>("getPaddingLeft", &UIWidget::getPaddingLeft);
1004 g_lua.bindClassMemberFunction<UIWidget>("getOpacity", &UIWidget::getOpacity);
1005 g_lua.bindClassMemberFunction<UIWidget>("getRotation", &UIWidget::getRotation);
1006 g_lua.bindClassMemberFunction<UIWidget>("setImageSource", &UIWidget::setImageSource);
1007 g_lua.bindClassMemberFunction<UIWidget>("setImageClip", &UIWidget::setImageClip);
1008 g_lua.bindClassMemberFunction<UIWidget>("setImageOffsetX", &UIWidget::setImageOffsetX);
1009 g_lua.bindClassMemberFunction<UIWidget>("setImageOffsetY", &UIWidget::setImageOffsetY);
1010 g_lua.bindClassMemberFunction<UIWidget>("setImageOffset", &UIWidget::setImageOffset);
1011 g_lua.bindClassMemberFunction<UIWidget>("setImageWidth", &UIWidget::setImageWidth);
1012 g_lua.bindClassMemberFunction<UIWidget>("setImageHeight", &UIWidget::setImageHeight);
1013 g_lua.bindClassMemberFunction<UIWidget>("setImageSize", &UIWidget::setImageSize);
1014 g_lua.bindClassMemberFunction<UIWidget>("setImageRect", &UIWidget::setImageRect);
1015 g_lua.bindClassMemberFunction<UIWidget>("setImageColor", &UIWidget::setImageColor);
1016 g_lua.bindClassMemberFunction<UIWidget>("setImageFixedRatio", &UIWidget::setImageFixedRatio);
1017 g_lua.bindClassMemberFunction<UIWidget>("setImageRepeated", &UIWidget::setImageRepeated);
1018 g_lua.bindClassMemberFunction<UIWidget>("setImageSmooth", &UIWidget::setImageSmooth);
1019 g_lua.bindClassMemberFunction<UIWidget>("setImageBorderTop", &UIWidget::setImageBorderTop);
1020 g_lua.bindClassMemberFunction<UIWidget>("setImageBorderRight", &UIWidget::setImageBorderRight);
1021 g_lua.bindClassMemberFunction<UIWidget>("setImageBorderBottom", &UIWidget::setImageBorderBottom);
1022 g_lua.bindClassMemberFunction<UIWidget>("setImageBorderLeft", &UIWidget::setImageBorderLeft);
1023 g_lua.bindClassMemberFunction<UIWidget>("setImageBorder", &UIWidget::setImageBorder);
1024 g_lua.bindClassMemberFunction<UIWidget>("getImageClip", &UIWidget::getImageClip);
1025 g_lua.bindClassMemberFunction<UIWidget>("getImageOffsetX", &UIWidget::getImageOffsetX);
1026 g_lua.bindClassMemberFunction<UIWidget>("getImageOffsetY", &UIWidget::getImageOffsetY);
1027 g_lua.bindClassMemberFunction<UIWidget>("getImageOffset", &UIWidget::getImageOffset);
1028 g_lua.bindClassMemberFunction<UIWidget>("getImageWidth", &UIWidget::getImageWidth);
1029 g_lua.bindClassMemberFunction<UIWidget>("getImageHeight", &UIWidget::getImageHeight);
1030 g_lua.bindClassMemberFunction<UIWidget>("getImageSize", &UIWidget::getImageSize);
1031 g_lua.bindClassMemberFunction<UIWidget>("getImageRect", &UIWidget::getImageRect);
1032 g_lua.bindClassMemberFunction<UIWidget>("getImageColor", &UIWidget::getImageColor);
1033 g_lua.bindClassMemberFunction<UIWidget>("isImageFixedRatio", &UIWidget::isImageFixedRatio);
1034 g_lua.bindClassMemberFunction<UIWidget>("isImageSmooth", &UIWidget::isImageSmooth);
1035 g_lua.bindClassMemberFunction<UIWidget>("getImageBorderTop", &UIWidget::getImageBorderTop);
1036 g_lua.bindClassMemberFunction<UIWidget>("getImageBorderRight", &UIWidget::getImageBorderRight);
1037 g_lua.bindClassMemberFunction<UIWidget>("getImageBorderBottom", &UIWidget::getImageBorderBottom);
1038 g_lua.bindClassMemberFunction<UIWidget>("getImageBorderLeft", &UIWidget::getImageBorderLeft);
1039 g_lua.bindClassMemberFunction<UIWidget>("getImageTextureWidth", &UIWidget::getImageTextureWidth);
1040 g_lua.bindClassMemberFunction<UIWidget>("getImageTextureHeight", &UIWidget::getImageTextureHeight);
1041 g_lua.bindClassMemberFunction<UIWidget>("resizeToText", &UIWidget::resizeToText);
1042 g_lua.bindClassMemberFunction<UIWidget>("clearText", &UIWidget::clearText);
1043 g_lua.bindClassMemberFunction<UIWidget>("setText", &UIWidget::setText);
1044 g_lua.bindClassMemberFunction<UIWidget>("setTextAlign", &UIWidget::setTextAlign);
1045 g_lua.bindClassMemberFunction<UIWidget>("setTextOffset", &UIWidget::setTextOffset);
1046 g_lua.bindClassMemberFunction<UIWidget>("setTextWrap", &UIWidget::setTextWrap);
1047 g_lua.bindClassMemberFunction<UIWidget>("setTextAutoResize", &UIWidget::setTextAutoResize);
1048 g_lua.bindClassMemberFunction<UIWidget>("setTextVerticalAutoResize", &UIWidget::setTextVerticalAutoResize);
1049 g_lua.bindClassMemberFunction<UIWidget>("setTextHorizontalAutoResize", &UIWidget::setTextHorizontalAutoResize);
1050 g_lua.bindClassMemberFunction<UIWidget>("setFont", &UIWidget::setFont);
1051 g_lua.bindClassMemberFunction<UIWidget>("getText", &UIWidget::getText);
1052 g_lua.bindClassMemberFunction<UIWidget>("getDrawText", &UIWidget::getDrawText);
1053 g_lua.bindClassMemberFunction<UIWidget>("getTextAlign", &UIWidget::getTextAlign);
1054 g_lua.bindClassMemberFunction<UIWidget>("getTextOffset", &UIWidget::getTextOffset);
1055 g_lua.bindClassMemberFunction<UIWidget>("getTextWrap", &UIWidget::getTextWrap);
1056 g_lua.bindClassMemberFunction<UIWidget>("getFont", &UIWidget::getFont);
1057 g_lua.bindClassMemberFunction<UIWidget>("getTextSize", &UIWidget::getTextSize);
1058
1059
1060 // UILayout
1061 g_lua.registerClass<UILayout>();
1062 g_lua.bindClassMemberFunction<UILayout>("update", &UILayout::update);
1063 g_lua.bindClassMemberFunction<UILayout>("updateLater", &UILayout::updateLater);
1064 g_lua.bindClassMemberFunction<UILayout>("applyStyle", &UILayout::applyStyle);
1065 g_lua.bindClassMemberFunction<UILayout>("addWidget", &UILayout::addWidget);
1066 g_lua.bindClassMemberFunction<UILayout>("removeWidget", &UILayout::removeWidget);
1067 g_lua.bindClassMemberFunction<UILayout>("disableUpdates", &UILayout::disableUpdates);
1068 g_lua.bindClassMemberFunction<UILayout>("enableUpdates", &UILayout::enableUpdates);
1069 g_lua.bindClassMemberFunction<UILayout>("setParent", &UILayout::setParent);
1070 g_lua.bindClassMemberFunction<UILayout>("getParentWidget", &UILayout::getParentWidget);
1071 g_lua.bindClassMemberFunction<UILayout>("isUpdateDisabled", &UILayout::isUpdateDisabled);
1072 g_lua.bindClassMemberFunction<UILayout>("isUpdating", &UILayout::isUpdating);
1073 g_lua.bindClassMemberFunction<UILayout>("isUIAnchorLayout", &UILayout::isUIAnchorLayout);
1074 g_lua.bindClassMemberFunction<UILayout>("isUIBoxLayout", &UILayout::isUIBoxLayout);
1075 g_lua.bindClassMemberFunction<UILayout>("isUIHorizontalLayout", &UILayout::isUIHorizontalLayout);
1076 g_lua.bindClassMemberFunction<UILayout>("isUIVerticalLayout", &UILayout::isUIVerticalLayout);
1077 g_lua.bindClassMemberFunction<UILayout>("isUIGridLayout", &UILayout::isUIGridLayout);
1078
1079
1080 // UIBoxLayout
1081 g_lua.registerClass<UIBoxLayout, UILayout>();
1082 g_lua.bindClassMemberFunction<UIBoxLayout>("setSpacing", &UIBoxLayout::setSpacing);
1083 g_lua.bindClassMemberFunction<UIBoxLayout>("setFitChildren", &UIBoxLayout::setFitChildren);
1084
1085
1086 // UIVerticalLayout
1087 g_lua.registerClass<UIVerticalLayout, UIBoxLayout>();
1088 g_lua.bindClassStaticFunction<UIVerticalLayout>("create", [](UIWidgetPtr parent){ return UIVerticalLayoutPtr(new UIVerticalLayout(parent)); } );
1089 g_lua.bindClassMemberFunction<UIVerticalLayout>("setAlignBottom", &UIVerticalLayout::setAlignBottom);
1090 g_lua.bindClassMemberFunction<UIVerticalLayout>("isAlignBottom", &UIVerticalLayout::isAlignBottom);
1091
1092
1093 // UIHorizontalLayout
1094 g_lua.registerClass<UIHorizontalLayout, UIBoxLayout>();
1095 g_lua.bindClassStaticFunction<UIHorizontalLayout>("create", [](UIWidgetPtr parent){ return UIHorizontalLayoutPtr(new UIHorizontalLayout(parent)); } );
1096 g_lua.bindClassMemberFunction<UIHorizontalLayout>("setAlignRight", &UIHorizontalLayout::setAlignRight);
1097
1098
1099 // UIGridLayout
1100 g_lua.registerClass<UIGridLayout, UILayout>();
1101 g_lua.bindClassStaticFunction<UIGridLayout>("create", [](UIWidgetPtr parent){ return UIGridLayoutPtr(new UIGridLayout(parent)); });
1102 g_lua.bindClassMemberFunction<UIGridLayout>("setCellSize", &UIGridLayout::setCellSize);
1103 g_lua.bindClassMemberFunction<UIGridLayout>("setCellWidth", &UIGridLayout::setCellWidth);
1104 g_lua.bindClassMemberFunction<UIGridLayout>("setCellHeight", &UIGridLayout::setCellHeight);
1105 g_lua.bindClassMemberFunction<UIGridLayout>("setCellSpacing", &UIGridLayout::setCellSpacing);
1106 g_lua.bindClassMemberFunction<UIGridLayout>("setFlow", &UIGridLayout::setFlow);
1107 g_lua.bindClassMemberFunction<UIGridLayout>("setNumColumns", &UIGridLayout::setNumColumns);
1108 g_lua.bindClassMemberFunction<UIGridLayout>("setNumLines", &UIGridLayout::setNumLines);
1109 g_lua.bindClassMemberFunction<UIGridLayout>("getNumColumns", &UIGridLayout::getNumColumns);
1110 g_lua.bindClassMemberFunction<UIGridLayout>("getNumLines", &UIGridLayout::getNumLines);
1111 g_lua.bindClassMemberFunction<UIGridLayout>("getCellSize", &UIGridLayout::getCellSize);
1112 g_lua.bindClassMemberFunction<UIGridLayout>("getCellSpacing", &UIGridLayout::getCellSpacing);
1113 g_lua.bindClassMemberFunction<UIGridLayout>("isUIGridLayout", &UIGridLayout::isUIGridLayout);
1114
1115
1116 // UIAnchorLayout
1117 g_lua.registerClass<UIAnchorLayout, UILayout>();
1118 g_lua.bindClassStaticFunction<UIAnchorLayout>("create", [](UIWidgetPtr parent){ return UIAnchorLayoutPtr(new UIAnchorLayout(parent)); } );
1119 g_lua.bindClassMemberFunction<UIAnchorLayout>("removeAnchors", &UIAnchorLayout::removeAnchors);
1120 g_lua.bindClassMemberFunction<UIAnchorLayout>("centerIn", &UIAnchorLayout::centerIn);
1121 g_lua.bindClassMemberFunction<UIAnchorLayout>("fill", &UIAnchorLayout::fill);
1122
1123
1124 // UITextEdit
1125 g_lua.registerClass<UITextEdit, UIWidget>();
1126 g_lua.bindClassStaticFunction<UITextEdit>("create", []{ return UITextEditPtr(new UITextEdit); } );
1127 g_lua.bindClassMemberFunction<UITextEdit>("setCursorPos", &UITextEdit::setCursorPos);
1128 g_lua.bindClassMemberFunction<UITextEdit>("setSelection", &UITextEdit::setSelection);
1129 g_lua.bindClassMemberFunction<UITextEdit>("setCursorVisible", &UITextEdit::setCursorVisible);
1130 g_lua.bindClassMemberFunction<UITextEdit>("setChangeCursorImage", &UITextEdit::setChangeCursorImage);
1131 g_lua.bindClassMemberFunction<UITextEdit>("setTextHidden", &UITextEdit::setTextHidden);
1132 g_lua.bindClassMemberFunction<UITextEdit>("setValidCharacters", &UITextEdit::setValidCharacters);
1133 g_lua.bindClassMemberFunction<UITextEdit>("setShiftNavigation", &UITextEdit::setShiftNavigation);
1134 g_lua.bindClassMemberFunction<UITextEdit>("setMultiline", &UITextEdit::setMultiline);
1135 g_lua.bindClassMemberFunction<UITextEdit>("setEditable", &UITextEdit::setEditable);
1136 g_lua.bindClassMemberFunction<UITextEdit>("setSelectable", &UITextEdit::setSelectable);
1137 g_lua.bindClassMemberFunction<UITextEdit>("setSelectionColor", &UITextEdit::setSelectionColor);
1138 g_lua.bindClassMemberFunction<UITextEdit>("setSelectionBackgroundColor", &UITextEdit::setSelectionBackgroundColor);
1139 g_lua.bindClassMemberFunction<UITextEdit>("setMaxLength", &UITextEdit::setMaxLength);
1140 g_lua.bindClassMemberFunction<UITextEdit>("setTextVirtualOffset", &UITextEdit::setTextVirtualOffset);
1141 g_lua.bindClassMemberFunction<UITextEdit>("getTextVirtualOffset", &UITextEdit::getTextVirtualOffset);
1142 g_lua.bindClassMemberFunction<UITextEdit>("getTextVirtualSize", &UITextEdit::getTextVirtualSize);
1143 g_lua.bindClassMemberFunction<UITextEdit>("getTextTotalSize", &UITextEdit::getTextTotalSize);
1144 g_lua.bindClassMemberFunction<UITextEdit>("moveCursorHorizontally", &UITextEdit::moveCursorHorizontally);
1145 g_lua.bindClassMemberFunction<UITextEdit>("moveCursorVertically", &UITextEdit::moveCursorVertically);
1146 g_lua.bindClassMemberFunction<UITextEdit>("appendText", &UITextEdit::appendText);
1147 g_lua.bindClassMemberFunction<UITextEdit>("wrapText", &UITextEdit::wrapText);
1148 g_lua.bindClassMemberFunction<UITextEdit>("removeCharacter", &UITextEdit::removeCharacter);
1149 g_lua.bindClassMemberFunction<UITextEdit>("blinkCursor", &UITextEdit::blinkCursor);
1150 g_lua.bindClassMemberFunction<UITextEdit>("del", &UITextEdit::del);
1151 g_lua.bindClassMemberFunction<UITextEdit>("paste", &UITextEdit::paste);
1152 g_lua.bindClassMemberFunction<UITextEdit>("copy", &UITextEdit::copy);
1153 g_lua.bindClassMemberFunction<UITextEdit>("cut", &UITextEdit::cut);
1154 g_lua.bindClassMemberFunction<UITextEdit>("selectAll", &UITextEdit::selectAll);
1155 g_lua.bindClassMemberFunction<UITextEdit>("clearSelection", &UITextEdit::clearSelection);
1156 g_lua.bindClassMemberFunction<UITextEdit>("getDisplayedText", &UITextEdit::getDisplayedText);
1157 g_lua.bindClassMemberFunction<UITextEdit>("getSelection", &UITextEdit::getSelection);
1158 g_lua.bindClassMemberFunction<UITextEdit>("getTextPos", &UITextEdit::getTextPos);
1159 g_lua.bindClassMemberFunction<UITextEdit>("getCursorPos", &UITextEdit::getCursorPos);
1160 g_lua.bindClassMemberFunction<UITextEdit>("getMaxLength", &UITextEdit::getMaxLength);
1161 g_lua.bindClassMemberFunction<UITextEdit>("getSelectionStart", &UITextEdit::getSelectionStart);
1162 g_lua.bindClassMemberFunction<UITextEdit>("getSelectionEnd", &UITextEdit::getSelectionEnd);
1163 g_lua.bindClassMemberFunction<UITextEdit>("getSelectionColor", &UITextEdit::getSelectionColor);
1164 g_lua.bindClassMemberFunction<UITextEdit>("getSelectionBackgroundColor", &UITextEdit::getSelectionBackgroundColor);
1165 g_lua.bindClassMemberFunction<UITextEdit>("hasSelection", &UITextEdit::hasSelection);
1166 g_lua.bindClassMemberFunction<UITextEdit>("isEditable", &UITextEdit::isEditable);
1167 g_lua.bindClassMemberFunction<UITextEdit>("isSelectable", &UITextEdit::isSelectable);
1168 g_lua.bindClassMemberFunction<UITextEdit>("isCursorVisible", &UITextEdit::isCursorVisible);
1169 g_lua.bindClassMemberFunction<UITextEdit>("isChangingCursorImage", &UITextEdit::isChangingCursorImage);
1170 g_lua.bindClassMemberFunction<UITextEdit>("isTextHidden", &UITextEdit::isTextHidden);
1171 g_lua.bindClassMemberFunction<UITextEdit>("isShiftNavigation", &UITextEdit::isShiftNavigation);
1172 g_lua.bindClassMemberFunction<UITextEdit>("isMultiline", &UITextEdit::isMultiline);
1173
1174
1175 g_lua.registerClass<ShaderProgram>();
1176 g_lua.registerClass<PainterShaderProgram>();
1177 g_lua.bindClassMemberFunction<PainterShaderProgram>("addMultiTexture", &PainterShaderProgram::addMultiTexture);
1178
1179
1180 // ParticleEffect
1181 g_lua.registerClass<ParticleEffectType>();
1182 g_lua.bindClassStaticFunction<ParticleEffectType>("create", []{ return ParticleEffectTypePtr(new ParticleEffectType); });
1183 g_lua.bindClassMemberFunction<ParticleEffectType>("getName", &ParticleEffectType::getName);
1184 g_lua.bindClassMemberFunction<ParticleEffectType>("getDescription", &ParticleEffectType::getDescription);
1185
1186
1187 // UIParticles
1188 g_lua.registerClass<UIParticles, UIWidget>();
1189 g_lua.bindClassStaticFunction<UIParticles>("create", []{ return UIParticlesPtr(new UIParticles); } );
1190 g_lua.bindClassMemberFunction<UIParticles>("addEffect", &UIParticles::addEffect);
1191#endif
1192
1193
1194#ifdef FW_NET
1195 // Server
1196 g_lua.registerClass<Server>();
1197 g_lua.bindClassStaticFunction<Server>("create", &Server::create);
1198 g_lua.bindClassMemberFunction<Server>("close", &Server::close);
1199 g_lua.bindClassMemberFunction<Server>("isOpen", &Server::isOpen);
1200 g_lua.bindClassMemberFunction<Server>("acceptNext", &Server::acceptNext);
1201
1202
1203 // Connection
1204 g_lua.registerClass<Connection>();
1205 g_lua.bindClassMemberFunction<Connection>("getIp", &Connection::getIp);
1206
1207
1208 // Protocol
1209 g_lua.registerClass<Protocol>();
1210 g_lua.bindClassStaticFunction<Protocol>("create", []{ return ProtocolPtr(new Protocol); });
1211 g_lua.bindClassMemberFunction<Protocol>("connect", &Protocol::connect);
1212 g_lua.bindClassMemberFunction<Protocol>("disconnect", &Protocol::disconnect);
1213 g_lua.bindClassMemberFunction<Protocol>("isConnected", &Protocol::isConnected);
1214 g_lua.bindClassMemberFunction<Protocol>("isConnecting", &Protocol::isConnecting);
1215 g_lua.bindClassMemberFunction<Protocol>("getConnection", &Protocol::getConnection);
1216 g_lua.bindClassMemberFunction<Protocol>("setConnection", &Protocol::setConnection);
1217 g_lua.bindClassMemberFunction<Protocol>("send", &Protocol::send);
1218 g_lua.bindClassMemberFunction<Protocol>("recv", &Protocol::recv);
1219 g_lua.bindClassMemberFunction<Protocol>("setXteaKey", &Protocol::setXteaKey);
1220 g_lua.bindClassMemberFunction<Protocol>("getXteaKey", &Protocol::getXteaKey);
1221 g_lua.bindClassMemberFunction<Protocol>("generateXteaKey", &Protocol::generateXteaKey);
1222 g_lua.bindClassMemberFunction<Protocol>("enableXteaEncryption", &Protocol::enableXteaEncryption);
1223 g_lua.bindClassMemberFunction<Protocol>("enableChecksum", &Protocol::enableChecksum);
1224
1225
1226 // ProtocolHttp
1227 g_lua.registerClass<ProtocolHttp>();
1228 g_lua.bindClassStaticFunction<ProtocolHttp>("create", []{ return ProtocolHttpPtr(new ProtocolHttp); });
1229 g_lua.bindClassMemberFunction<ProtocolHttp>("connect", &ProtocolHttp::connect);
1230 g_lua.bindClassMemberFunction<ProtocolHttp>("disconnect", &ProtocolHttp::disconnect);
1231 g_lua.bindClassMemberFunction<ProtocolHttp>("send", &ProtocolHttp::send);
1232 g_lua.bindClassMemberFunction<ProtocolHttp>("recv", &ProtocolHttp::recv);
1233
1234
1235 // InputMessage
1236 g_lua.registerClass<InputMessage>();
1237 g_lua.bindClassStaticFunction<InputMessage>("create", []{ return InputMessagePtr(new InputMessage); });
1238 g_lua.bindClassMemberFunction<InputMessage>("setBuffer", &InputMessage::setBuffer);
1239 g_lua.bindClassMemberFunction<InputMessage>("skipBytes", &InputMessage::skipBytes);
1240 g_lua.bindClassMemberFunction<InputMessage>("getU8", &InputMessage::getU8);
1241 g_lua.bindClassMemberFunction<InputMessage>("getU16", &InputMessage::getU16);
1242 g_lua.bindClassMemberFunction<InputMessage>("getU32", &InputMessage::getU32);
1243 g_lua.bindClassMemberFunction<InputMessage>("getU64", &InputMessage::getU64);
1244 g_lua.bindClassMemberFunction<InputMessage>("getString", &InputMessage::getString);
1245 g_lua.bindClassMemberFunction<InputMessage>("peekU8", &InputMessage::peekU8);
1246 g_lua.bindClassMemberFunction<InputMessage>("peekU16", &InputMessage::peekU16);
1247 g_lua.bindClassMemberFunction<InputMessage>("peekU32", &InputMessage::peekU32);
1248 g_lua.bindClassMemberFunction<InputMessage>("peekU64", &InputMessage::peekU64);
1249 g_lua.bindClassMemberFunction<InputMessage>("decryptRsa", &InputMessage::decryptRsa);
1250 g_lua.bindClassMemberFunction<InputMessage>("getReadSize", &InputMessage::getReadSize);
1251 g_lua.bindClassMemberFunction<InputMessage>("getUnreadSize", &InputMessage::getUnreadSize);
1252 g_lua.bindClassMemberFunction<InputMessage>("getMessageSize", &InputMessage::getMessageSize);
1253 g_lua.bindClassMemberFunction<InputMessage>("eof", &InputMessage::eof);
1254
1255
1256 // OutputMessage
1257 g_lua.registerClass<OutputMessage>();
1258 g_lua.bindClassStaticFunction<OutputMessage>("create", []{ return OutputMessagePtr(new OutputMessage); });
1259 g_lua.bindClassMemberFunction<OutputMessage>("getBuffer", &OutputMessage::getBuffer);
1260 g_lua.bindClassMemberFunction<OutputMessage>("reset", &OutputMessage::reset);
1261 g_lua.bindClassMemberFunction<OutputMessage>("addU8", &OutputMessage::addU8);
1262 g_lua.bindClassMemberFunction<OutputMessage>("addU16", &OutputMessage::addU16);
1263 g_lua.bindClassMemberFunction<OutputMessage>("addU32", &OutputMessage::addU32);
1264 g_lua.bindClassMemberFunction<OutputMessage>("addU64", &OutputMessage::addU64);
1265 g_lua.bindClassMemberFunction<OutputMessage>("addString", &OutputMessage::addString);
1266 g_lua.bindClassMemberFunction<OutputMessage>("addPaddingBytes", &OutputMessage::addPaddingBytes);
1267 g_lua.bindClassMemberFunction<OutputMessage>("encryptRsa", &OutputMessage::encryptRsa);
1268 g_lua.bindClassMemberFunction<OutputMessage>("getMessageSize", &OutputMessage::getMessageSize);
1269 g_lua.bindClassMemberFunction<OutputMessage>("setMessageSize", &OutputMessage::setMessageSize);
1270 g_lua.bindClassMemberFunction<OutputMessage>("getWritePos", &OutputMessage::getWritePos);
1271 g_lua.bindClassMemberFunction<OutputMessage>("setWritePos", &OutputMessage::setWritePos);
1272#endif
1273
1274
1275#ifdef FW_SOUND
1276 // SoundManager
1277 g_lua.registerSingletonClass("g_sounds");
1278 g_lua.bindSingletonFunction("g_sounds", "preload", &SoundManager::preload, &g_sounds);
1279 g_lua.bindSingletonFunction("g_sounds", "play", &SoundManager::play, &g_sounds);
1280 g_lua.bindSingletonFunction("g_sounds", "getChannel", &SoundManager::getChannel, &g_sounds);
1281 g_lua.bindSingletonFunction("g_sounds", "stopAll", &SoundManager::stopAll, &g_sounds);
1282 g_lua.bindSingletonFunction("g_sounds", "enableAudio", &SoundManager::enableAudio, &g_sounds);
1283 g_lua.bindSingletonFunction("g_sounds", "disableAudio", &SoundManager::disableAudio, &g_sounds);
1284 g_lua.bindSingletonFunction("g_sounds", "setAudioEnabled", &SoundManager::setAudioEnabled, &g_sounds);
1285 g_lua.bindSingletonFunction("g_sounds", "isAudioEnabled", &SoundManager::isAudioEnabled, &g_sounds);
1286
1287
1288 g_lua.registerClass<SoundSource>();
1289 g_lua.registerClass<CombinedSoundSource, SoundSource>();
1290 g_lua.registerClass<StreamSoundSource, SoundSource>();
1291
1292
1293 g_lua.registerClass<SoundChannel>();
1294 g_lua.bindClassMemberFunction<SoundChannel>("play", &SoundChannel::play);
1295 g_lua.bindClassMemberFunction<SoundChannel>("stop", &SoundChannel::stop);
1296 g_lua.bindClassMemberFunction<SoundChannel>("enqueue", &SoundChannel::enqueue);
1297 g_lua.bindClassMemberFunction<SoundChannel>("enable", &SoundChannel::enable);
1298 g_lua.bindClassMemberFunction<SoundChannel>("disable", &SoundChannel::disable);
1299 g_lua.bindClassMemberFunction<SoundChannel>("setGain", &SoundChannel::setGain);
1300 g_lua.bindClassMemberFunction<SoundChannel>("getGain", &SoundChannel::getGain);
1301 g_lua.bindClassMemberFunction<SoundChannel>("setEnabled", &SoundChannel::setEnabled);
1302 g_lua.bindClassMemberFunction<SoundChannel>("isEnabled", &SoundChannel::isEnabled);
1303 g_lua.bindClassMemberFunction<SoundChannel>("getId", &SoundChannel::getId);
1304#endif
1305
1306
1307#ifdef FW_SQL
1308 // Database
1309 g_lua.registerClass<Database>();
1310 g_lua.bindClassMemberFunction<Database>("getDatabaseEngine", &Database::getDatabaseEngine);
1311 g_lua.bindClassMemberFunction<Database>("isConnected", &Database::isConnected);
1312 g_lua.bindClassMemberFunction<Database>("getStringComparer", &Database::getStringComparer);
1313 g_lua.bindClassMemberFunction<Database>("getUpdateLimiter", &Database::getUpdateLimiter);
1314 g_lua.bindClassMemberFunction<Database>("getLastInsertedRowID", &Database::getLastInsertedRowID);
1315 g_lua.bindClassMemberFunction<Database>("escapeString", &Database::escapeString);
1316 //g_lua.bindClassMemberFunction<Database>("escapeBlob", &Database::escapeBlob); // need to write a cast for this type to work (if needed)
1317
1318
1319 // DBQuery
1320 /* (not sure if this class will work as a luafunction)
1321 g_lua.registerClass<DBQuery>();
1322 g_lua.bindClassStaticFunction<DBQuery>("create", []{ return DBQuery(); });
1323 g_lua.bindClassMemberFunction<DBQuery>("append", &DBQuery::append);
1324 g_lua.bindClassMemberFunction<DBQuery>("set", &DBQuery::set);
1325 */
1326
1327
1328 // DBResult
1329 g_lua.registerClass<DBResult>();
1330 g_lua.bindClassMemberFunction<DBResult>("getDataInt", &DBResult::getDataInt);
1331 g_lua.bindClassMemberFunction<DBResult>("getDataLong", &DBResult::getDataLong);
1332 g_lua.bindClassMemberFunction<DBResult>("getDataString", &DBResult::getDataString);
1333 //g_lua.bindClassMemberFunction<DBResult>("getDataStream", &DBResult::getDataStream); // need to write a cast for this type to work (if needed)
1334 g_lua.bindClassMemberFunction<DBResult>("getRowCount", &DBResult::getRowCount);
1335 g_lua.bindClassMemberFunction<DBResult>("free", &DBResult::free);
1336 g_lua.bindClassMemberFunction<DBResult>("next", &DBResult::next);
1337
1338
1339 // MySQL
1340 g_lua.registerClass<DatabaseMySQL, Database>();
1341 g_lua.bindClassStaticFunction<DatabaseMySQL>("create", []{ return DatabaseMySQLPtr(new DatabaseMySQL); });
1342 g_lua.bindClassMemberFunction<DatabaseMySQL>("connect", &DatabaseMySQL::connect);
1343 g_lua.bindClassMemberFunction<DatabaseMySQL>("beginTransaction", &DatabaseMySQL::beginTransaction);
1344 g_lua.bindClassMemberFunction<DatabaseMySQL>("rollback", &DatabaseMySQL::rollback);
1345 g_lua.bindClassMemberFunction<DatabaseMySQL>("commit", &DatabaseMySQL::commit);
1346 g_lua.bindClassMemberFunction<DatabaseMySQL>("executeQuery", &DatabaseMySQL::executeQuery);
1347 g_lua.bindClassMemberFunction<DatabaseMySQL>("storeQuery", &DatabaseMySQL::storeQuery);
1348
1349
1350 // MySQLResult
1351 g_lua.registerClass<MySQLResult>();
1352 g_lua.bindClassMemberFunction<MySQLResult>("getDataInt", &MySQLResult::getDataInt);
1353 g_lua.bindClassMemberFunction<MySQLResult>("getDataLong", &MySQLResult::getDataLong);
1354 g_lua.bindClassMemberFunction<MySQLResult>("getDataString", &MySQLResult::getDataString);
1355 //g_lua.bindClassMemberFunction<MySQLResult>("getDataStream", &MySQLResult::getDataStream); // need to write a cast for this type to work (if needed)
1356 g_lua.bindClassMemberFunction<MySQLResult>("getRowCount", &MySQLResult::getRowCount);
1357 g_lua.bindClassMemberFunction<MySQLResult>("free", &MySQLResult::free);
1358 g_lua.bindClassMemberFunction<MySQLResult>("next", &MySQLResult::next);
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376addDamageCondition(condition, rounds, time, value)
1377addEvent(callback, delay, ...)
1378addOutfitCondition(condition, lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet)
1379broadcastMessage(message, type)
1380cleanMap()
1381createCombatArea( {area}, <optional> {extArea} )
1382createCombatObject()
1383createConditionObject(type)
1384debugPrint(text)
1385doAddCondition(cid, condition)
1386doAddContainerItem(uid, itemid, <optional> count/subtype)
1387doAreaCombatCondition(cid, pos, area, condition, effect)
1388doAreaCombatDispel(cid, pos, area, type, effect)
1389doAreaCombatHealth(cid, type, pos, area, min, max, effect)
1390doAreaCombatMana(cid, pos, area, min, max, effect)
1391doChallengeCreature(cid, target)
1392doChangeSpeed(cid, delta)
1393doChangeTypeItem(uid, newtype)
1394doCombat(cid, combat, param)
1395doCreateItem(itemid, type/count, pos)
1396doCreateItemEx(itemid, <optional> count/subtype)
1397doCreateNpc(name, pos)
1398doCreateTeleport(itemid, topos, createpos)
1399doMoveCreature(cid, direction)
1400doPlayerAddItem(cid, itemid, <optional: default: 1> count, <optional: default: 1> canDropOnMap, <optional: default: 1>subtype)
1401doPlayerAddItem(uid, itemid, <optional: default: 1> count/subtype)
1402doPlayerRemoveItem(cid, itemid, count, <optional> subtype, <optional> ignoreEquipped)
1403doPlayerSetOfflineTrainingSkill(cid, skill)
1404doRelocate(pos, posTo)
1405doRemoveCondition(cid, type[, subId])
1406doSetCreatureLight(cid, lightLevel, lightColor, time)
1407doSetCreatureOutfit(cid, outfit, time)
1408doSetItemOutfit(cid, item, time)
1409doSetMonsterOutfit(cid, name, time)
1410doSummonCreature(name, pos)
1411doTargetCombatCondition(cid, target, condition, effect)
1412doTargetCombatDispel(cid, target, type, effect)
1413doTargetCombatHealth(cid, target, type, min, max, effect)
1414doTargetCombatMana(cid, target, min, max, effect)
1415doTileAddItemEx(pos, uid)
1416getCreatureCondition(cid, condition[, subId])
1417getDepotId(uid)
1418getHouseByPlayerGUID(playerGUID)
1419getInstantSpellInfoByName(cid, name)
1420getInstantSpellWords(name)
1421getPlayerFlagValue(cid, flag)
1422getPlayerInstantSpellCount(cid)
1423getPlayerInstantSpellInfo(cid, index)
1424getSpectators(centerPos, rangex, rangey, multifloor, onlyPlayers)
1425getThingfromPos(pos)
1426getThingPos(uid)
1427getTileHouseInfo(pos)
1428getWaypointPosition(name)
1429getWorldLight()
1430getWorldTime()
1431getWorldUpTime()
1432hasProperty(uid, prop)
1433isDepot(uid)
1434isInArray(array, value)
1435isInWar(cid, target)
1436isMovable(uid)
1437isValidUID(uid)
1438mayNotMove(cid, value)
1439numberToVariant(number)
1440positionToVariant(pos)
1441registerClass(className, baseClass, newFunction)
1442registerEnum(value)
1443registerEnumIn(tableName, value)
1444registerGlobalMethod(functionName, function)
1445registerGlobalVariable(name, value)
1446registerMetaMethod(className, functionName, function)
1447registerMethod(className, functionName, function)
1448registerTable(tableName)
1449registerVariable(tableName, name, value)
1450saveServer()
1451sendChannelMessage(channelId, type, message)
1452sendGuildChannelMessage(guildId, type, message)
1453setCombatArea(combat, area)
1454setCombatCallBack(combat, key, function_name)
1455setCombatCondition(combat, condition)
1456setCombatFormula(combat, type, mina, minb, maxa, maxb)
1457setCombatParam(combat, key, value)
1458setConditionFormula(combat, mina, minb, maxa, maxb)
1459setConditionParam(condition, key, value)
1460stopEvent(eventid)
1461stringToVariant(string)
1462targetPositionToVariant(pos)
1463variantToNumber(var)
1464variantToPosition(var)
1465variantToString(var)
1466
1467-- className = {}
1468
1469className.__call = newFunction
1470className.metatable = {}
1471className.metatable.__index = className
1472className.metatable.__metatable = className
1473className.metatable.methodName = func
1474className.metatable['h'] = hash
1475className.metatable['p'] = parents
1476className.metatable['t'] = type
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490//Combat
1491Combat()
1492combat:execute(creature, variant)
1493combat:setArea(area)
1494combat:setCallBack(key, function)
1495combat:setCondition(condition)
1496combat:setFormula(type, mina, minb, maxa, maxb)
1497combat:setOrigin(origin)
1498combat:setParameter(key, value)
1499
1500//Condition
1501Condition(conditionType[, conditionId = CONDITIONID_COMBAT])
1502condition:addDamage(rounds, time, value)
1503condition:addOutfit(lookTypeEx, lookType, lookHead, lookBody, lookLegs, lookFeet[, lookAddons[, lookMount]])
1504condition:setOutfit(outfit)
1505condition:clone()
1506condition:getEndTime()
1507condition:getIcons()
1508condition:getId()
1509condition:getSubId()
1510condition:getTicks()
1511condition:getType()
1512condition:setFormula(mina, minb, maxa, maxb)
1513condition:setParameter(key, value)
1514condition:setTicks(ticks)
1515
1516//Container
1517Container(itemId[, position])
1518Container(uid)
1519container:addItem(itemId[, count/subType = 1[, index = INDEX_WHEREEVER[, flags = 0]]])
1520container:addItemEx(item[, index = INDEX_WHEREEVER[, flags = 0]])
1521container:getCapacity()
1522container:getEmptySlots([recursive = false])
1523container:getItem(index)
1524container:getItemHoldingCount()
1525container:getItemCountById(itemId[, subType = -1])
1526container:getSize()
1527container:hasItem(item)
1528container:isContainer()
1529
1530//Creature
1531Creature(id or name or userdata)
1532creature:addCondition(condition[, force = false])
1533creature:addHealth(healthChange)
1534creature:addMana(manaChange[, animationOnLoss = false])
1535creature:canSee(position)
1536creature:canSeeCreature(creature)
1537creature:changeSpeed(delta)
1538creature:getBaseSpeed()
1539creature:getCondition(conditionType[, conditionId = CONDITIONID_COMBAT[, subId = 0]])
1540creature:getDamageMap()
1541creature:getDescription(distance)
1542creature:getDirection()
1543creature:getFollowCreature()
1544creature:getHealth()
1545creature:getId()
1546creature:getLight()
1547creature:getMana()
1548creature:getMaster()
1549creature:getMaxHealth()
1550creature:getMaxMana()
1551creature:getName()
1552creature:getOutfit()
1553creature:getPosition()
1554creature:getSpeed()
1555creature:getSummons()
1556creature:getTarget()
1557creature:getTile()
1558creature:isCreature()
1559creature:isHealthHidden()
1560creature:isInGhostMode()
1561creature:isItem()
1562creature:isMonster()
1563creature:isNpc()
1564creature:isPlayer()
1565creature:isRemoved()
1566creature:registerEvent(name)
1567creature:remove()
1568creature:removeCondition(conditionType[, conditionId = CONDITIONID_COMBAT[, subId = 0[, force = false]]])
1569creature:say(text, type[, ghost = false[, target = nullptr[, position]]])
1570creature:setDirection(direction)
1571creature:setDropLoot(doDrop)
1572creature:setFollowCreature(followedCreature)
1573creature:setHiddenHealth(hide)
1574creature:setLight(color, level)
1575creature:setMaster(master)
1576creature:setMaxHealth(maxHealth)
1577creature:setOutfit(outfit)
1578creature:setTarget(target)
1579creature:teleportTo(position[, pushMovement = false])
1580creature:unregisterEvent(name)
1581
1582//Game
1583Game.createItem(itemId, count[, position])
1584Game.createMonster(monsterName, position[, extended = false[, force = false]])
1585Game.createNpc(npcName, position[, extended = false[, force = false]])
1586Game.createTile(x, y, z or position[, isDynamic = false])
1587Game.getExperienceStage(level)
1588Game.getGameState()
1589Game.getHouses()
1590Game.getMonsterCount()
1591Game.getNpcCount()
1592Game.getPlayerCount()
1593Game.getPlayers()
1594Game.getReturnMessage(value)
1595Game.getSpectators(position[, multifloor = false[, onlyPlayer = false[, minRangeX = 0[, maxRangeX = 0[, minRangeY = 0[, maxRangeY = 0]]]]]])
1596Game.getTowns()
1597Game.getWorldType()
1598Game.loadMap(path)
1599Game.setGameState(state)
1600Game.setWorldType(type)
1601Game.startRaid(raidName)
1602
1603//Group
1604Group(id)
1605group:getAccess()
1606group:getFlags()
1607group:getId()
1608group:getMaxDepotItems()
1609group:getMaxVipEntries()
1610group:getName()
1611
1612//Guild
1613Guild(id)
1614guild:addMember(player)
1615guild:addRank(id, name, level)
1616guild:getId()
1617guild:getMembersOnline()
1618guild:getMotd()
1619guild:getName()
1620guild:getRankById(id)
1621guild:getRankByLevel(level)
1622guild:removeMember(player)
1623guild:setMotd(motd)
1624
1625//House
1626House(id)
1627house:getAccessList(listId)
1628house:getBedCount()
1629house:getBeds()
1630house:getDoorCount()
1631house:getDoors()
1632house:getExitPosition()
1633house:getId()
1634house:getName()
1635house:getOwnerGuid()
1636house:getRent()
1637house:getTileCount()
1638house:getTiles()
1639house:getTown()
1640house:setAccessList(listId, list)
1641house:setOwnerGuid(guid[, updateDatabase = true])
1642
1643//Item
1644Item(uid)
1645item:clone()
1646item:decay()
1647item:getActionId()
1648item:getArticle()
1649item:getAttribute(key)
1650item:getCharges()
1651item:getCount()
1652item:getDescription(distance)
1653item:getFluidType()
1654item:getId()
1655item:getName()
1656item:getPluralName()
1657item:getPosition()
1658item:getSubType()
1659item:getTile()
1660item:getType()
1661item:getUniqueId()
1662item:hasProperty(property)
1663item:isCreature()
1664item:isItem()
1665item:moveTo(position)
1666item:remove([count = -1])
1667item:removeAttribute(key)
1668item:setActionId(actionId)
1669item:setAttribute(key, value)
1670item:split([count = 1])
1671item:transform(itemId[, count/subType = -1])
1672
1673//ItemType
1674ItemType(id or name)
1675itemType:getArmor()
1676itemType:getArticle()
1677itemType:getAttack()
1678itemType:getCapacity()
1679itemType:getDecayId()
1680itemType:getDefense()
1681itemType:getDescription()
1682itemType:getElementDamage()
1683itemType:getElementType()
1684itemType:getExtraDefense()
1685itemType:getFluidSource()
1686itemType:getId()
1687itemType:getName()
1688itemType:getClientId()
1689itemType:getPluralName()
1690itemType:getSlotPosition()
1691itemType:getTransformDeEquipId()
1692itemType:getTransformEquipId()
1693itemType:getType()
1694itemType:getWeaponType()
1695itemType:getWeight([count = 1[, precise = true]])
1696itemType:hasSubType()
1697itemType:isContainer()
1698itemType:isCorpse()
1699itemType:isDoor()
1700itemType:isFluidContainer()
1701itemType:isMovable()
1702itemType:isReadable()
1703itemType:isRune()
1704itemType:isStackable()
1705itemType:isWritable()
1706
1707//ModalWindow
1708ModalWindow(id, title, message)
1709modalWindow:addButton(id, text)
1710modalWindow:addChoice(id, text)
1711modalWindow:getButtonCount()
1712modalWindow:getChoiceCount()
1713modalWindow:getDefaultEnterButton()
1714modalWindow:getDefaultEscapeButton()
1715modalWindow:getId()
1716modalWindow:getMessage()
1717modalWindow:getTitle()
1718modalWindow:hasPriority()
1719modalWindow:sendToPlayer(player)
1720modalWindow:setDefaultEnterButton(buttonId)
1721modalWindow:setDefaultEscapeButton(buttonId)
1722modalWindow:setMessage(text)
1723modalWindow:setPriority(priority)
1724modalWindow:setTitle(text)
1725
1726//Monster
1727Monster(id)
1728monster:addFriend(creature)
1729monster:addTarget(creature[, pushFront = false])
1730monster:despawn()
1731monster:getFriendCount()
1732monster:getFriendList()
1733monster:getSpawnPosition()
1734monster:getTargetCount()
1735monster:getTargetList()
1736monster:getType()
1737monster:isFriend(creature)
1738monster:isIdle()
1739monster:isMonster()
1740monster:isOpponent(creature)
1741monster:isTarget(creature)
1742monster:removeFriend(creature)
1743monster:removeTarget(creature)
1744monster:searchTarget([searchType = TARGETSEARCH_DEFAULT])
1745monster:selectTarget(creature)
1746monster:setIdle(idle)
1747
1748//Digimon
1749
1750Digimon:getId() @return id {INT};
1751Digimon:getCid() @return id {INT};
1752Digimon:getCreature() @return class {Creature};
1753Digimon:getType() @return "partner" {String} or "wild" {String} or false;
1754Digimon:getInfo() @return information {Table};
1755Digimon:getDigimonType() @return digimonInformation {Table};
1756
1757
1758//MonsterType
1759MonsterType(id or name)
1760monsterType:canPushCreatures()
1761monsterType:canPushItems()
1762monsterType:getArmor()
1763monsterType:getAttackList()
1764monsterType:getBaseSpeed()
1765monsterType:getChangeTargetChance()
1766monsterType:getChangeTargetSpeed()
1767monsterType:getCombatImmunities()
1768monsterType:getConditionImmunities()
1769monsterType:getCorpseId()
1770monsterType:getCreatureEvents()
1771monsterType:getDefense()
1772monsterType:getDefenseList()
1773monsterType:getElementList()
1774monsterType:getExperience()
1775monsterType:getHealth()
1776monsterType:getLight()
1777monsterType:getLoot()
1778monsterType:getManaCost()
1779monsterType:getMaxHealth()
1780monsterType:getMaxSummons()
1781monsterType:getName()
1782monsterType:getNameDescription()
1783monsterType:getOutfit()
1784monsterType:getRace()
1785monsterType:getRunHealth()
1786monsterType:getStaticAttackChance()
1787monsterType:getSummonList()
1788monsterType:getTargetDistance()
1789monsterType:getVoices()
1790monsterType:getYellChance()
1791monsterType:getYellSpeedTicks()
1792monsterType:isAttackable()
1793monsterType:isConvinceable()
1794monsterType:isHealthShown()
1795monsterType:isHostile()
1796monsterType:isIllusionable()
1797monsterType:isPushable()
1798monsterType:isSummonable()
1799
1800//NetworkMessage
1801networkMessage:addByte(number)
1802networkMessage:addDouble(number)
1803networkMessage:addItem(item[, protocolVersion = CLIENT_VERSION_MIN])
1804networkMessage:addItemId(itemId[, protocolVersion = CLIENT_VERSION_MIN])
1805networkMessage:addPosition(position)
1806networkMessage:addString(string)
1807networkMessage:addU16(number)
1808networkMessage:addU32(number)
1809networkMessage:addU64(number)
1810networkMessage:getByte()
1811networkMessage:getPosition()
1812networkMessage:getString()
1813networkMessage:getU16()
1814networkMessage:getU32()
1815networkMessage:getU64()
1816networkMessage:reset()
1817networkMessage:sendToPlayer(player)
1818networkMessage:skipBytes(number)
1819
1820//Npc
1821Npc([id/name])
1822npc:isNpc()
1823npc:setMasterPos(pos[, radius])
1824npc:getSpeechBubble()
1825npc:setSpeechBubble(speechBubble)
1826
1827//Party
1828party:addInvite(player)
1829party:addMember(player)
1830party:disband()
1831party:getInviteeCount()
1832party:getInvitees()
1833party:getLeader()
1834party:getMemberCount()
1835party:getMembers()
1836party:isSharedExperienceActive()
1837party:isSharedExperienceEnabled()
1838party:removeInvite(player)
1839party:removeMember(player)
1840party:setLeader(player)
1841party:setSharedExperience(active)
1842party:shareExperience(experience)
1843
1844//Player
1845Player(id or name or userdata)
1846player:addBlessing(blessing)
1847player:addExperience(experience[, sendText = false])
1848player:addItem(itemId[, count = 1[, canDropOnMap = true[, subType = 1[, slot = CONST_SLOT_WHEREEVER]]]])
1849player:addItemEx(item[, canDropOnMap = false[, slot = SLOT_WHEREEVER]])
1850player:addManaSpent(amount)
1851player:addMapMark(position, type, description)
1852player:addMoney(money)
1853player:addMount(mountId)
1854player:addOutfit(lookType)
1855player:addOutfitAddon(lookType, addon)
1856player:addPremiumDays(days)
1857player:addSkillTries(skillType, tries)
1858player:addSoul(soulChange)
1859player:canLearnSpell(spellName)
1860player:channelSay(speaker, type, text, channelId)
1861player:forgetSpell(spellName)
1862player:getAccountId()
1863player:getAccountType()
1864player:getBankBalance()
1865player:getBaseMagicLevel()
1866player:getCapacity()
1867player:getClient()
1868player:getContainerId(container)
1869player:getContainerById(id)
1870player:getContainerIndex(id)
1871player:getDeathPenalty()
1872player:getDepotChest(depotId[, autoCreate = false])
1873player:getEffectiveSkillLevel(skillType)
1874player:getExperience()
1875player:getFreeCapacity()
1876player:getGroup()
1877player:getGuid()
1878player:getGuild()
1879player:getGuildLevel()
1880player:getGuildNick()
1881player:getHouse()
1882player:getIp()
1883player:getInbox()
1884player:getItemById(itemId, deepSearch[, subType = -1])
1885player:getItemCount(itemId[, subType = -1])
1886player:getLastLoginSaved()
1887player:getLevel()
1888player:getMagicLevel()
1889player:getManaSpent()
1890player:getMaxSoul()
1891player:getMoney()
1892player:getParty()
1893player:getPremiumDays()
1894player:getSex()
1895player:getSkillLevel(skillType)
1896player:getSkillPercent(skillType)
1897player:getSkillTries(skillType)
1898player:getSkull()
1899player:getSkullTime()
1900player:getSlotItem(slot)
1901player:getSoul()
1902player:getStamina()
1903player:getStorageValue(key)
1904player:getTown()
1905player:getVocation()
1906player:hasBlessing(blessing)
1907player:hasLearnedSpell(spellName)
1908player:hasMount(mountId)
1909player:hasOutfit(lookType[, addon = 0])
1910player:isPlayer()
1911player:isPzLocked()
1912player:learnSpell(spellName)
1913player:openChannel(channelId)
1914player:popupFYI(message)
1915player:removeBlessing(blessing)
1916player:removeExperience(experience[, sendText = false])
1917player:removeItem(itemId, count[, subType = -1[, ignoreEquipped = false]])
1918player:removeMoney(money)
1919player:removeMount(mountId)
1920player:removeOutfit(lookType)
1921player:removeOutfitAddon(lookType, addon)
1922player:removePremiumDays(days)
1923player:save()
1924player:sendChannelMessage(author, text, type, channelId)
1925player:sendOutfitWindow()
1926player:sendPrivateMessage(speaker, text[, type])
1927player:sendTextMessage(type, text[, position, primaryValue = 0, primaryColor = TEXTCOLOR_NONE[, secondaryValue = 0, secondaryColor = TEXTCOLOR_NONE]])
1928player:sendCancelMessage(text)
1929player:sendTutorial(tutorialId)
1930player:setAccountType(accountType)
1931player:setBankBalance(bankBalance)
1932player:setCapacity(capacity)
1933player:setGhostMode(enabled)
1934player:setGroup(group)
1935player:setGuild(guild)
1936player:setGuildLevel(level)
1937player:setGuildNick(nick)
1938player:setMaxMana(maxMana)
1939player:setSex(newSex)
1940player:setSkull(skull)
1941player:setSkullTime(skullTime)
1942player:setStamina(stamina)
1943player:setStorageValue(key, value)
1944player:setTown(town)
1945player:setVocation(vocation)
1946player:showTextDialog(itemId[, text[, canWrite[, length]]])
1947
1948//Position
1949Position([x = 0[, y = 0[, z = 0[, stackpos = 0]]]])
1950Position([position])
1951position:getDistance(positionEx)
1952position:isSightClear(positionEx[, sameFloor = true])
1953position:sendDistanceEffect(positionEx, distanceEffect[, player = nullptr])
1954position:sendMagicEffect(magicEffect[, player = nullptr])
1955
1956//Table
1957table.create(arrayLength, keyLength)
1958
1959//Tile
1960Tile(position)
1961Tile(x, y, z)
1962tile:getBottomCreature()
1963tile:getBottomVisibleCreature(creature)
1964tile:getCreatureCount()
1965tile:getCreatures()
1966tile:getDownItemCount()
1967tile:getFieldItem()
1968tile:getGround()
1969tile:getHouse()
1970tile:getItemById(itemId[, subType = -1])
1971tile:getItemByTopOrder(topOrder)
1972tile:getItemByType(itemType)
1973tile:getItemCount()
1974tile:getItems()
1975tile:getPosition()
1976tile:getThing(index)
1977tile:getThingCount()
1978tile:getTopCreature()
1979tile:getTopDownItem()
1980tile:getTopItemCount()
1981tile:getTopTopItem()
1982tile:getTopVisibleCreature(creature)
1983tile:getTopVisibleThing(creature)
1984tile:hasFlag(flag)
1985tile:hasProperty(property[, item])
1986tile:queryAdd(thing[, flags])
1987
1988//Town
1989Town(id or name)
1990town:getId()
1991town:getName()
1992town:getTemplePosition()
1993
1994//Variant
1995Variant(number or string or position or thing)
1996Variant:getNumber()
1997Variant:getString()
1998Variant:getPosition()
1999
2000//Vocation
2001Vocation(id or name)
2002vocation:getAttackSpeed()
2003vocation:getBaseSpeed()
2004vocation:getCapacityGain()
2005vocation:getClientId()
2006vocation:getDemotion()
2007vocation:getDescription()
2008vocation:getHealthGain()
2009vocation:getHealthGainAmount()
2010vocation:getHealthGainTicks()
2011vocation:getId()
2012vocation:getManaGain()
2013vocation:getManaGainAmount()
2014vocation:getManaGainTicks()
2015vocation:getMaxSoul()
2016vocation:getName()
2017vocation:getPromotion()
2018vocation:getRequiredManaSpent(magicLevel)
2019vocation:getRequiredSkillTries(skillType, skillLevel)
2020vocation:getSoulGainTicks()
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038doCreatureSayWithRadius(cid, text, type, radiusx, radiusy, position)
2039getBlessingsCost(level)
2040getPvpBlessingCost(level)
2041isInRange(pos, fromPos, toPos)
2042isPremium(cid)
2043isNumber(str)
2044getDistanceBetween(firstPosition, secondPosition)
2045isSorcerer(cid)
2046isDruid(cid)
2047isPaladin(cid)
2048isKnight(cid)
2049getTibianTime()
2050doForceSummonCreature(name, pos)
2051Game.getStorageValue(key)
2052Game.setStorageValue(key, value)
2053Game.convertIpToString(ip)
2054Position.getNextPosition(self, direction, steps)
2055Creature.getClosestFreePosition(self, position, extended)
2056Player.sendCancelMessage(self, message)
2057Player.feed(self, food)
2058Player.isUsingOtClient(self)
2059Player.sendExtendedOpcode(self, opcode, buffer)
2060string.split(str, sep)
2061pushThing(thing)
2062isCreature(cid)
2063isPlayer(cid)
2064isMonster(cid)
2065isSummon(cid)
2066isNpc(cid)
2067isItem(uid)
2068isContainer(uid)
2069getCreatureName(cid)
2070getCreatureHealth(cid)
2071getCreatureMaxHealth(cid)
2072getCreaturePosition(cid)
2073getCreatureOutfit(cid)
2074getCreatureSpeed(cid)
2075getCreatureBaseSpeed(cid)
2076getCreatureTarget(cid)
2077getCreatureMaster(cid)
2078getCreatureSummons(cid)
2079doCreatureAddHealth(cid, health)
2080doRemoveCreature(cid)
2081doCreatureSetLookDir(cid, direction)
2082doCreatureSay(cid, text, type, ...)
2083doCreatureChangeOutfit(cid, outfit)
2084doSetCreatureDropLoot(cid, doDrop)
2085registerCreatureEvent(cid, name)
2086unregisterCreatureEvent(cid, name)
2087getPlayerByName(name)
2088getIPByPlayerName(name)
2089getPlayerGUID(cid)
2090getPlayerIp(cid)
2091getPlayerAccountType(cid)
2092getPlayerLastLoginSaved(cid)
2093getPlayerName(cid)
2094getPlayerFreeCap(cid)
2095getPlayerPosition(cid)
2096getPlayerMagLevel(cid)
2097getPlayerAccess(cid)
2098getPlayerSkill(cid, skillId)
2099getPlayerMana(cid)
2100getPlayerMaxMana(cid)
2101getPlayerLevel(cid)
2102getPlayerTown(cid)
2103getPlayerVocation(cid)
2104getPlayerSoul(cid)
2105getPlayerSex(cid)
2106getPlayerStorageValue(cid, key)
2107getPlayerBalance(cid)
2108getPlayerMoney(cid)
2109getPlayerGroupId(cid)
2110getPlayerLookDir(cid)
2111getPlayerLight(cid)
2112getPlayerDepotItems(cid, depotId)
2113getPlayerSkullType(cid)
2114getPlayerLossPercent(cid)
2115getPlayerMount(cid, mountId)
2116getPlayerPremiumDays(cid)
2117getPlayerBlessing(cid, blessing)
2118getPlayerParty(cid)
2119getPlayerGuildId(cid)
2120getPlayerGuildLevel(cid)
2121getPlayerGuildName(cid)
2122getPlayerGuildRank(cid)
2123getPlayerGuildNick(cid)
2124getPlayerMasterPos(cid)
2125getPlayerItemCount(cid, itemId, ...)
2126getPlayerSlotItem(cid, slot)
2127getPlayerItemById(cid, deepSearch, itemId, ...)
2128getPlayerFood(cid)
2129canPlayerLearnInstantSpell(cid, name)
2130getPlayerLearnedInstantSpell(cid, name)
2131isPlayerGhost(cid)
2132isPlayerPzLocked(cid)
2133getPlayersByIPAddress(ip, mask)
2134getOnlinePlayers()
2135getPlayersByAccountNumber(accountNumber)
2136getPlayerGUIDByName(name)
2137getAccountNumberByPlayerName(name)
2138setPlayerStorageValue(cid, key, value)
2139doPlayerSetBalance(cid, balance)
2140doPlayerAddMoney(cid, money)
2141doPlayerRemoveMoney(cid, money)
2142doPlayerAddSoul(cid, soul)
2143doPlayerSetVocation(cid, vocation)
2144doPlayerSetTown(cid, town)
2145setPlayerGroupId(cid, groupId)
2146doPlayerSetSex(cid, sex)
2147doPlayerSetGuildLevel(cid, level)
2148doPlayerSetGuildNick(cid, nick)
2149doShowTextDialog(cid, itemId, text)
2150doPlayerAddItemEx(cid, uid, ...)
2151doPlayerAddPremiumDays(cid, days)
2152doPlayerRemovePremiumDays(cid, days)
2153doPlayerAddBlessing(cid, blessing)
2154doPlayerAddOutfit(cid, lookType, addons)
2155doPlayerRemOutfit(cid, lookType, addons)
2156canPlayerWearOutfit(cid, lookType, addons)
2157doPlayerAddMount(cid, mountId)
2158doPlayerRemoveMount(cid, mountId)
2159doPlayerSendCancel(cid, text)
2160doPlayerFeed(cid, food)
2161playerLearnInstantSpell(cid, name)
2162doPlayerPopupFYI(cid, message)
2163doSendTutorial(cid, tutorialId)
2164doAddMapMark(cid, pos, type, description)
2165doPlayerSendTextMessage(cid, type, text, ...)
2166doPlayerAddExp(cid, exp, useMult, ...)
2167doPlayerAddManaSpent(cid, mana)
2168doPlayerAddSkillTry(cid, skillid, n)
2169doPlayerAddMana(cid, mana, ...)
2170doPlayerJoinParty(cid, leaderId)
2171getPartyMembers(cid)
2172getMonsterTargetList(cid)
2173getMonsterFriendList(cid)
2174doSetMonsterTarget(cid, target)
2175doMonsterChangeTarget(cid)
2176doConvinceCreature(cid, target)
2177getTownId(townName)
2178getTownName(townId)
2179getTownTemplePosition(townId)
2180doSetItemActionId(uid, actionId)
2181doTransformItem(uid, newItemId, ...)
2182doRemoveItem(uid, ...)
2183getContainerSize(uid)
2184getContainerCap(uid)
2185getContainerItem(uid, slot)
2186doAddContainerItemEx(uid, virtualId)
2187doSendMagicEffect(pos, magicEffect, ...)
2188doSendDistanceShoot(fromPos, toPos, distanceEffect, ...)
2189isSightClear(fromPos, toPos, floorCheck)
2190getPromotedVocation(vocationId)
2191getGuildId(guildName)
2192getHouseName(houseId)
2193getHouseOwner(houseId)
2194getHouseEntry(houseId)
2195getHouseTown(houseId)
2196getHouseTilesSize(houseId)
2197isItemStackable(itemId)
2198isItemRune(itemId)
2199isItemDoor(itemId)
2200isItemContainer(itemId)
2201isItemFluidContainer(itemId)
2202isItemMovable(itemId)
2203isCorpse(uid)
2204getItemName(itemId)
2205getItemWeight(itemId, ...)
2206getItemDescriptions(itemId)
2207getItemIdByName(name)
2208getItemWeightByUID(uid, ...)
2209getItemRWInfo(uid)
2210getContainerCapById(itemId)
2211getFluidSourceType(itemId)
2212doSetItemText(uid, text)
2213doSetItemSpecialDescription(uid, desc)
2214doDecayItem(uid)
2215setHouseOwner(id, guid)
2216getHouseRent(id)
2217getHouseAccessList(id, listId)
2218setHouseAccessList(id, listId, listText)
2219getTilePzInfo(position)
2220getTileInfo(position)
2221getTileItemByType(position, itemType)
2222getTileItemById(position, itemId, ...)
2223getTileThingByPos(position)
2224getTileThingByTopOrder(position, topOrder)
2225getTopCreature(position)
2226queryTileAddThing(thing, position, ...)
2227doTeleportThing(uid, dest, pushMovement)
2228getThing(uid)
2229getConfigInfo(info)
2230getWorldCreatures(type)
2231getGlobalStorageValue(key)
2232setGlobalStorageValue(key, value)
2233
2234-- Custom Functions
2235-- Created and developed by ReyHammer
2236
2237function getDigimonDatabaseId(item)
2238 return id/false
2239end
2240
2241function sendPackageToClient(player, opcode, buffer) end -- void
2242
2243function isWalkable(pos)
2244 return true/false
2245end
2246
2247function split(string, pattern)
2248 return table = {}
2249end
2250
2251function backPlayerDigimon(player)
2252 return true/false
2253end
2254
2255function getWildDigimonInternalInformation(id)
2256 return information/false
2257end
2258
2259function getDigimonInternalInformation(id)
2260 return information/false
2261end
2262
2263function getAvailablePointsOfDigimons(id)
2264 return number/false
2265end
2266
2267function removeDigimon(id) end -- void
2268
2269function isDigimonIdInUse(id)
2270 return true/false
2271end
2272
2273function getDigimonInformationById(id)
2274 return information = {
2275 type = result:getDataInt("type"),
2276 stage = result:getDataInt("stage"),
2277 name = result:getDataString("name"),
2278 digimon = result:getDataString("digimon"),
2279 owner = result:getDataString("owner"),
2280 level = result:getDataInt("level"),
2281 experience = result:getDataInt("experience"),
2282 addonLookType = result:getDataInt("addonLookType"),
2283 strength = result:getDataInt("strength"),
2284 wisdom = result:getDataInt("wisdom"),
2285 agility = result:getDataInt("agility"),
2286 defence = result:getDataInt("defence"),
2287 magicResistance = result:getDataInt("magicResistance"),
2288 lucky = result:getDataInt("lucky"),
2289 hungry = result:getDataInt("hungry"),
2290 happiness = result:getDataInt("happiness"),
2291 health = result:getDataInt("health"),
2292 cooldowns = result:getDataString("cooldowns"),
2293 }
2294end
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311ConnectEvents - This server is equipped with a high-tech system to enable scripters to do and call a lot of events on a unique lua script!
2312
2313Under we have a list of all possible ConnectEvents;
2314
2315-- g_events / Start --
2316
2317############ CreatureScripts ############
2318
2319function onDeath(creature {class}, onDeath {function}) {creature, corpse, killer, mostDamage, unjustified, mostDamageUnjustified}
2320function onUseItem(itemId {INT}, onUseItem {function}, [range = 1 {INT}]) {player, item, fromPosition, itemEx, toPosition, isHotkey}
2321function onUseItemWithActionId(actionid {INT}, onUseItemWithActionId {function}) {player, item, fromPosition, itemEx, toPosition, isHotkey}
2322function onPlayerWalk(player {class}, onPlayerWalk {function}) {player, toPosition, fromPosition, teleport}
2323function onPlayerTalk(text {string}, onPlayerTalk {function}) {player, channelId, type, receiver, text}
2324function onPlayerLogin(player {class}, onPlayerLogin {function}) {player}
2325function onPlayerLogout(player {class}, onPlayerLogout {function}) {player}
2326function onPrepareDeath(creature {class}, onPrepareDeath {function}) {creature, killer}
2327function onKill(creature {class} [MASTER], onKill {function}) {creature, target}
2328function onThink(creature {class}, onThink {function}) {creature, interval}
2329function onPlayerAdvance(player {class}, onPlayerAdvance {function}) {player, skill, oldLevel, newLevel}
2330function onPlayerModelWindow(player {class}, onPlayerModelWindow {function}) {player, modalWindowId, buttonId, choiceId}
2331function onPlayerTextEdit(player {class}, onPlayerTextEdit {function}) {player, item, text}
2332function onHealthChange(creature {class}, onHealthChange {function}) {creature, attacker, primaryDamage, primaryType, secondaryDamage, secondaryType}
2333function onManaChange(creature {class}, onManaChange {function}) {creature, attacker, manaChange}
2334function onPlayerExtendedOpCode(player {class}, onPlayerExtendedOpCode {function}, opcode {INT}) {player, opcode, buffer}
2335function onSpawn(creature {class}, onSpawn {function}) {creature}
2336function onSummonAppear(creature {class}, onSummonAppear {function}) {creature}
2337function onDisappear(creature {class}, onDisappear {function}) {creature}
2338function onSummonDisappear(creature {class}, onSummonDisappear {function}) {creature}
2339
2340############ Events / Creature ############
2341
2342function onCreatureWalk(creature {class}, onCreatureWalk {function}) {creature, toPosition, fromPosition, teleport}
2343function onPlayerBrowseField(player {class}, onBrowseField {function}) {player, position}
2344function onPlayerLook(player {class}, onPlayerLook {function}) {player, thing, position, distance}
2345function onLookInBattleList(player {class}, onLookInBattleList {function}) {player, creature, distance}
2346function onLookInTrade(player {class}, onLookInTrade {function}) {player, partner, item, distance}
2347function onLookInShop(player {class}, onLookInShop {function}) {player, itemType, count}
2348function onMoveItem(player {class}, onMoveItem {function}) {player, item, count, fromPosition, toPosition}
2349function onMoveCreature(player {class}, onMoveCreature {function}) {player, creature, fromPosition, toPosition}
2350function onTurn(player {class}, onTurn {function}) {player, direction}
2351function onTradeRequest(player {class}, onTradeRequest {function}) {player, target, item}
2352function onTradeAccept(player {class}, onTradeAccept {function}) {player, target, item, targetItem}
2353function onGainExperience(player {class}, onGainExperience {function}) {player, source, exp, rawExp}
2354function onLoseExperience(player {class}, onLoseExperience {function}) {player, exp}
2355function onGainSkillTries(player {class}, onGainSkillTries {function}) {player, skill, tries}
2356-- Events / Party --
2357-- ////////////// --
2358############ Events / Creature ############
2359
2360function onChangeOutfit(creature {class}, onChangeOutfit {function}) {creature, outfit}
2361function onAreaCombat(creature {class}, onAreaCombat {function}) {creature, tile, isAggressive}
2362function onTargetCombat(creature {class}, onTargetCombat {function}) {creature, target}
2363
2364############ Events / Creature ############
2365
2366function onSelectTarget(creature {class}, onSelectTarget {function}) {creature, target}
2367
2368############ GlobalEvents ############
2369
2370function onStartup(onStartup {function}) {}
2371function onShutdown(onShutdown {function}) {}
2372function onPlayerRecord(current {INT}, onPlayerRecord {function}) {current, old}
2373
2374############ Digimons Related ############
2375
2376function onCallDigimon(digimon, onCallDigimon {function}) {digimon, master, item}
2377function onBackDigimon(digimon, onBackDigimon {function}) {digimon, master, item}
2378function onDigimonLevelUp(digimon, onDigimonLevelUp {function}) {digimon, master, newLevel}
2379function onDigimonIncreaseAttribute(digimon, onDigimonIncreaseAttribute {function}) {digimon, master, attribute, value}
2380function onDigimonReceiveExperience(digimon, onDigimonReceiveExperience {function}) {digimon, master, level, experience}
2381
2382-- g_events / End --
2383
2384-- g_npcEvents / Start --
2385
2386############ NPCs ############
2387
2388function onCreatureAppear(npcType {string}, onCreatureAppear {function}) {npc, creature}
2389function onCreatureDisappear(npcType {string}, onCreatureDisappear {function}) {npc, creature}
2390function onCreatureSay(npcType {string}, msg {string}, onCreatureSay {function}) {npc, creature, type, msg}
2391function onThink(npcType {string}, onThink {function}) {npc, creature}
2392function onCreatureMove(npcType {string}, onCreatureMove {function}) {npc, creature, fromPosition, toPosition}
2393
2394-- g_npcEvents / End --
2395
2396-- g_spells / Start --
2397
2398############ SPELLS ############
2399
2400function onDigimonUseSpell(digimon, moveNumber, moveName, requirements, cooldown, onDigimonUseSpell, functionParams) {digimon;functionParams}
2401
2402-- g_spells / End --
2403
2404############ Tutorial ############
2405
2406You can connect and disconnect events, to disconnect an event, you will need to use exactly the same params used to connect before!
2407
2408Using this system you can easily register a function on any event! Remember that all params you need is above!
2409
2410Remember that all these events are registered inside a g_events table, so to use any of then you need to use g_events.connect/disconnect.onEvent
2411
2412This is a mini tutorial, about this beautiful system!
2413
2414############ onUseItem ############
2415
2416function eventFunction(params)
2417 local player = params.player
2418 local item = params.item
2419 local fromPosition = params.fromPosition
2420 local itemEx = params.itemEx
2421 local toPosition = params.toPosition
2422 local isHotkey = params.isHotkey
2423
2424 if item:getCount() > 1 then
2425 item:getPosition():sendMagicEffect(2)
2426 else
2427 item:getPosition():sendMagicEffect(1)
2428 end
2429
2430 return true
2431end
2432
2433g_events.connect.onUseItem(2160, eventFunction) -- 2160 = It will be the itemId of the connected event, when player try to use it, eventFunction will be called! / eventFunction = the function that will be called when the player try to use an item!
2434
2435############ onUseItem ############
2436
2437All the credits goes to ReyHammer, who created all the system based on TFS 1.0;
2438And it can only be used by himself and Flyckks.