]> git.lizzy.rs Git - dragonblocks.git/blob - doc/API.md
54ade590f181ba78ae0bcf8d4c922d6ea8f054da
[dragonblocks.git] / doc / API.md
1 TODO: This Documentation is unfull and partly deprecated!
2 # API Documentation
3 ##      Methods
4                 dragonblocks.addFinalStep(function() : void) : void
5                         Execute the function after all mods are loaded, the player is spawned and the map is generated.
6                 dragonblocks.chatMessage(message : String) : void
7                         Write something into the chatconsole. (alias for dragonblocks.chat.write)
8                 dragonblocks.checkWorldExistance(worldname : String) : Boolean
9                         Check if a world exists or not
10                 dragonblocks.checkWorldOwnership(worldname : String) : Boolean
11                         Check if a world is owned by the user
12                 dragonblocks.checkWorldSpelling(worldname : String) : Boolean
13                         Check if a worldname is OK (e.g. does not contain special chacters)
14                 dragonblocks.clearTimer(name : String, meta : Object) : void
15                         Clear a timer set using  dragonblocks.setTimer
16                 dragonblocks.createItemstack(itemstring : String) : dragonblocks.Itemstack
17                         Create an Itemstack object and immediately parse the provided itemstring.
18                 dragonblocks.createWorld(properties : Object) : void
19                         Create and load a world without saving it.
20                 dragonblocks.error(errorstring : String) : void
21                         Throw an error. (errorstring is added to dragonblocks.backlog)
22                 dragonblocks.finalize() : void
23                         Execute the final steps added using dragonblocks.addFinalStep. Not to be used!
24                 dragonblocks.finishTimer(name : String, meta : Object) : void
25                         Immediately finish a timer set using dragonblocks.setTimer
26                 dragonblocks.generateMap() : void
27                         Run the Mapgen selected in the mainmenu. Not to be used.
28                 dragonblocks.getEmptyWorld() : Object
29                         Returns an Empty World save object. Not to be used.
30                 dragonblocks.getModpath(modname : String) : String
31                         Returns the path of an Mod or Gamemod. Use this instead of e.g. "mods/" + modname + "/" + ...
32                 dragonblocks.getNode(x, y) : dragonblocks.MapNode
33                         Returns the MapNode at x, y.
34                 dragonblocks.getPixelManipulator(manip : Array) : dragonblocks.PixelManipulator
35                         Returns an Pixel Manipulator. Same as new dragonblocks.PixelManipulator(manip)
36                 dragonblocks.getSavestring() : String
37                         Return the save string for the world
38                 dragonblocks.getSound(filename : String) : String
39                         Return the path for an sound file. These files can be placed in the folders mods/*/sounds, game/*/sounds and sounds. If not found, it will just return the filename.
40                 dragonblocks.getTexture(filename : String) : String
41                         Same as dragonblocks.getSound, exept for Textures and, if the file is found, it will surrond it with url() so you can do elem.style.background = dragonblocks.getTexture(...)
42                 dragonblocks.getToken() : String
43                         Returns a unique string starting with #
44                 dragonblocks.getTool(name : String) : dragonblocks.Tool
45                         Returns the tool with the id "name".
46                 dragonblocks.getVersion() : String
47                         Returns the version string (something like "Dragonblocks 3.0")
48                 dragonblocks.isValidItemstring(itemstring : String)
49                         Check if an Itemstring is OK
50                 dragonblocks.log(message : String) : void
51                         Add a message to the backlog.
52                 dragonblocks.gui.toggleLayer() : void
53                         Toggle the Layer. 
54                 dragonblocks.gui.openLayer() : void
55                 dragonblocks.gui.showLayer() : void
56                         Open the Layer
57                 dragonblocks.gui.closeLayer() : void
58                 dragonblocks.gui.hideLayer() : void
59                         Hide the Layer
60                 dragonblocks.gui.createBox(properties : Object) : Element
61                         Creates a dragonblocks.gui.Box(properties) and returns an object to access it.
62                         Valid properties are closeable : boolean, id : String, scroll : boolean, moveable : boolean, size : String ("big" or "small"), layer : boolean, keylock : boolean
63                 
64 ##      Objects
65                 dragonblocks.availableMods : Array
66                         A list of all mods
67                 dragonblocks.backlog : String
68                         Contains everything logged using dragonblocks.log
69                 dragonblocks.chat : dragonblocks.Chat
70                         The dragonblocks chatconsole.
71                 dragonblocks.chatcommands : Object
72                         Contains all registered chatcommands
73                 dragonblocks.entities : Object
74                         Contains all registered entities
75                 dragonblocks.gamemods : Array
76                         Contains the gamemods
77                 dragonblocks.groups : Object
78                         Contains all registered groups
79                 dragonblocks.items : Object
80                         Contains all registered items
81                 dragonblocks.itemstacks : Object
82                         Contains all created Itemstacks
83                 dragonblocks.keyHandler: dragonblocks.KeyHandler
84                         The Keyhandler
85 ##      Classes
86         
87 ## Modding tutorial
88 ###     dragonblocks.register method
89 ####    dragonblocks.registerEntity
90                 dragonblocks.registerEntity({
91                         name: "mod_tutorial:entity", // Entitystring
92                         desc: "Tutorial entity", // Entity description
93                         texture: "entity.png", // Entity texture
94                         width: 1, // Entity width
95                         height: 2, // Entity height
96                         verticalSpeed: 6.5, // Entity jump speed (affects height)
97                         horizontalSpeed: 4, // Entity walk speed
98                         gravity: true, // Enable or disable gravity
99                         onspawn: self => {
100                                 alert("Entity spawned!");
101                         }
102                         onpunch: self => {
103                                 alert("Entity punched!");
104                                 self.despawn(); // Let entity despawn
105                         }
106                         onclick: self => {
107                                 alert("Entity clicked!");
108                                 self.jumpOnce(); // Make entity jump once
109                         }
110                 });
111 ####    dragonblocks.registerItem
112                 dragonblocks.registerItem({
113                         name: "mod_tutorial:item", // Itemstring
114                         desc: "Tutorial entity spawner", // Item description
115                         texture: "item.png", // Item texture
116                         onuse: (x, y) => {
117                                 let entity = dragonblocks.spawnEntity("mod_tutorial:entity", x, y); // Spawn entity and save it to a variable (for later access)
118                         }
119                 });