]> git.lizzy.rs Git - dragonblocks.git/blob - doc/API.md
(hopefully) finished API documentation
[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                 dragonblocks.mods : Array
86                         Contains all loaded mods
87                 dragonblocks.nodes : Object
88                         Contains all registered nodes
89                 dragonblocks.recipes : Array
90                         Contains all registered recipes
91                 dragonblocks.settings : Object
92                         Contains all dragonblocks settings
93                 dragonblocks.skins : Object
94                         Contains all registered skins
95                 dragonblocks.spawnedEntities : Array
96                         Contains all spawned entities
97                 dragonblocks.tools : Object
98                         Contains all registered tools
99                 dragonblocks.worlds : Array
100                         List of saved worlds of logged-in user
101 ##      Classes
102         
103 ## Modding tutorial
104 ###     dragonblocks.register method
105 ####    dragonblocks.registerEntity
106                 dragonblocks.registerEntity({
107                         name: "mod_tutorial:entity", // Entitystring
108                         desc: "Tutorial entity", // Entity description
109                         texture: "entity.png", // Entity texture
110                         width: 1, // Entity width
111                         height: 2, // Entity height
112                         verticalSpeed: 6.5, // Entity jump speed (affects height)
113                         horizontalSpeed: 4, // Entity walk speed
114                         gravity: true, // Enable or disable gravity
115                         onspawn: self => {
116                                 alert("Entity spawned!");
117                         }
118                         onpunch: self => {
119                                 alert("Entity punched!");
120                                 self.despawn(); // Let entity despawn
121                         }
122                         onclick: self => {
123                                 alert("Entity clicked!");
124                                 self.jumpOnce(); // Make entity jump once
125                         }
126                 });
127 ####    dragonblocks.registerItem
128                 dragonblocks.registerItem({
129                         name: "mod_tutorial:item", // Itemstring
130                         desc: "Tutorial entity spawner", // Item description
131                         texture: "item.png", // Item texture
132                         onuse: (x, y) => {
133                                 let entity = dragonblocks.spawnEntity("mod_tutorial:entity", x, y); // Spawn entity and save it to a variable (for later access)
134                         }
135                 });