]> git.lizzy.rs Git - dragonblocks_alpha.git/blobdiff - src/node.c
Fix blending issues
[dragonblocks_alpha.git] / src / node.c
index c42fac21a9c51b74c506bcc3256488a7033f6e52..727f81cf10508fa4c2c04a38af265fe5ca313c90 100644 (file)
-#include "map.h"
 #include "node.h"
-#include "util.h"
+#include "terrain.h"
+#include "types.h"
 
-NodeDefintion node_definitions[NODE_UNLOADED] = {
-       // invalid
+NodeDefinition node_definitions[NODE_UNLOADED] = {
+       // unknown
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // air
        {
                .solid = false,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // grass
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // dirt
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // stone
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // snow
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
-       // wood
+       // oak wood
        {
                .solid = true,
+               .data_size = sizeof(ColorData),
                .create = NULL,
-               .serialize = NULL,
-               .deserialize = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
+       },
+       // oak leaves
+       {
+               .solid = true,
+               .data_size = sizeof(ColorData),
+               .create = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
+       },
+       // pine wood
+       {
+               .solid = true,
+               .data_size = sizeof(ColorData),
+               .create = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
+       },
+       // pine leaves
+       {
+               .solid = true,
+               .data_size = sizeof(ColorData),
+               .create = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
+       },
+       // palm wood
+       {
+               .solid = true,
+               .data_size = sizeof(ColorData),
+               .create = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
+       },
+       // palm leaves
+       {
+               .solid = true,
+               .data_size = sizeof(ColorData),
+               .create = NULL,
+               .delete = NULL,
+               .serialize = (void *) &ColorData_write,
+               .deserialize = (void *) &ColorData_read,
        },
        // sand
        {
                .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },
        // water
        {
                .solid = false,
+               .data_size = 0,
+               .create = NULL,
+               .delete = NULL,
+               .serialize = NULL,
+               .deserialize = NULL,
+       },
+       // lava
+       {
+               .solid = false,
+               .data_size = 0,
+               .create = NULL,
+               .delete = NULL,
+               .serialize = NULL,
+               .deserialize = NULL,
+       },
+       // vulcanostone
+       {
+               .solid = true,
+               .data_size = 0,
                .create = NULL,
+               .delete = NULL,
                .serialize = NULL,
                .deserialize = NULL,
        },