mirror of
https://github.com/appgurueu/deathlist.git
synced 2024-10-27 08:59:22 +01:00
140 lines
4.2 KiB
Markdown
140 lines
4.2 KiB
Markdown
# Kill History (`deathlist`)
|
|
|
|
A mod displaying a colored list of recent kills/deaths and the causes(killer, used item).
|
|
|
|
## About
|
|
|
|
Depends on [`modlib`](https://github.com/appgurueu/modlib) and - depending on your configuration - also other mods. If you use the default configuration, it depends on `default` and `fire`.
|
|
**Note: If there are other mods registering `on_punchplayer` or `on_hp_change` handlers, add them to the dependency list to make sure they execute before `deathlist`.**
|
|
Licensed under MIT.
|
|
|
|
## Screenshot
|
|
|
|
![Screenshot](https://raw.githubusercontent.com/appgurueu/deathlist/master/screenshot.png)
|
|
|
|
## API
|
|
|
|
`deathlist` provides a few internal functions, but the most common way to trigger a custom message is passing a custom type to `set_hp`:
|
|
|
|
```lua
|
|
-- example, kills player
|
|
player:set_hp(0, {
|
|
-- killer, required
|
|
killer = {
|
|
-- name, required
|
|
name = "singleplayer",
|
|
-- color, optional integer, will be completed if valid playername
|
|
color = 0xFFFFFF
|
|
},
|
|
-- method, required
|
|
method = {
|
|
-- image of used method, required
|
|
image = "blank.png",
|
|
-- name for logging, optional
|
|
name = "blank"
|
|
}
|
|
-- victim, optional overrides
|
|
victim = {
|
|
-- name, optional
|
|
name = "singleplayer",
|
|
-- color, optional
|
|
color = 0xFFFFFF
|
|
}
|
|
})
|
|
```
|
|
|
|
## Configuration
|
|
|
|
### Default Configuration
|
|
|
|
```json
|
|
{
|
|
"max_messages":5,
|
|
"mode":"list",
|
|
"autoremove_interval":30,
|
|
"hud_pos":{"x":0.75,"y":1},
|
|
"hud_base_offset": {"x":0,"y":-122},
|
|
"enable_environmental": true,
|
|
"enable_unknown": false,
|
|
"enable_forbidden_playernames": true,
|
|
"environmental_reasons": {
|
|
"falling":{
|
|
"name":"Falling",
|
|
"color":{"r": 255, "g": 255, "b": 255},
|
|
"method":"deathlist_tombstone.png"
|
|
},
|
|
"unknown":{
|
|
"name":"Something",
|
|
"color":{"r": 255, "g": 255, "b": 255},
|
|
"method":"deathlist_tombstone.png"
|
|
},
|
|
"drowning":{
|
|
"color":{"r": 105, "g": 201, "b": 231},
|
|
"method":"bubble.png",
|
|
"nodes": {
|
|
"default:water_flowing" : { "name" : "Water" }
|
|
}
|
|
},
|
|
"node_damage":{
|
|
"color":{"r": 255, "g": 255, "b": 255},
|
|
"method":"generate",
|
|
"nodes": {
|
|
"default:lava_flowing" : { "name" : "Lava", "color" : {"r": 244, "g": 114, "b": 9}, "method" : "fire_basic_flame.png" },
|
|
"default:lava_source" : { "color" : {"r": 244, "g": 114, "b": 9}, "method" : "fire_basic_flame.png" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Usage
|
|
|
|
#### `max_messages`
|
|
|
|
Maximum amount of messages to be displayed. Number > 0.
|
|
|
|
#### `mode`
|
|
|
|
String, either `"stack"` or `"list"`. Specifies message orientation. A stack means that the most recent message is always on the top, while list means exactly the opposite.
|
|
|
|
#### `autoremove_interval`
|
|
|
|
Can be set to `false` or a positive number in seconds. Specifies how often messages are removed despite having enough space left for the purpose of not cluttering the HUD.
|
|
|
|
#### `hud_pos`
|
|
|
|
X- and Y-Coordinate, numbers, position on HUD.
|
|
|
|
#### `hud_base_offset`
|
|
|
|
X- and Y-Offset, numbers in pixels(?).
|
|
|
|
#### `enable_environmental`
|
|
|
|
Boolean, whether to enable environmental reasons inside kill history.
|
|
|
|
#### `enable_unknown`
|
|
|
|
Boolean, whether to enable unknown (none of `falling`, `drowning` or `node_damage`) reasons inside kill history.
|
|
|
|
#### `enable_forbidden_playernames`
|
|
|
|
Boolean, whether to disallow certain playernames in order to reduce confusion(such as "Lava", "Water", "Falling" or "Something")
|
|
|
|
#### `environmental_reasons`
|
|
|
|
Table/Dictionairy of possible deaths due to environment.
|
|
|
|
##### Basic structure of a kill message
|
|
|
|
* `name` of killing thing, colorized using a `color`(table/dictionairy, r/g/b)
|
|
* `method` used by the killing thing, a texture. If `"generate"` is specified and a node is responsible, the node texture will be used.
|
|
|
|
##### `falling` / `unknown`
|
|
|
|
Player died through falling or an unknown reason; no node responsible. One definition of `name`, `color` and `method`.
|
|
|
|
##### `drowning` / `node_damage`
|
|
|
|
Player died by drowning node or by taking node damage. A node *must* be responsible.
|
|
Using the `nodes` table/dictionairy, you can specify overrides for each specific node concerning `name`, `color`, and `method`. If not specified, default values are taken. |