123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- -- Minimal test entities to test visuals
- core.register_entity("testentities:sprite", {
- initial_properties = {
- visual = "sprite",
- textures = { "testentities_sprite.png" },
- },
- })
- core.register_entity("testentities:upright_sprite", {
- initial_properties = {
- visual = "upright_sprite",
- textures = {
- "testentities_upright_sprite1.png",
- "testentities_upright_sprite2.png",
- },
- },
- })
- core.register_entity("testentities:cube", {
- initial_properties = {
- visual = "cube",
- textures = {
- "testentities_cube1.png",
- "testentities_cube2.png",
- "testentities_cube3.png",
- "testentities_cube4.png",
- "testentities_cube5.png",
- "testentities_cube6.png",
- },
- },
- })
- core.register_entity("testentities:item", {
- initial_properties = {
- visual = "item",
- wield_item = "testnodes:normal",
- },
- })
- core.register_entity("testentities:wielditem", {
- initial_properties = {
- visual = "wielditem",
- wield_item = "testnodes:normal",
- },
- })
- core.register_entity("testentities:mesh", {
- initial_properties = {
- visual = "mesh",
- mesh = "testnodes_pyramid.obj",
- textures = {
- "testnodes_mesh_stripes2.png"
- },
- },
- })
- core.register_entity("testentities:mesh_unshaded", {
- initial_properties = {
- visual = "mesh",
- mesh = "testnodes_pyramid.obj",
- textures = {
- "testnodes_mesh_stripes2.png"
- },
- shaded = false,
- },
- })
- core.register_entity("testentities:sam", {
- initial_properties = {
- visual = "mesh",
- mesh = "testentities_sam.b3d",
- textures = {
- "testentities_sam.png"
- },
- },
- on_activate = function(self)
- self.object:set_animation({x = 0, y = 219}, 30, 0, true)
- end,
- })
- -- Advanced visual tests
- -- An entity for testing animated and yaw-modulated sprites
- core.register_entity("testentities:yawsprite", {
- initial_properties = {
- selectionbox = {-0.3, -0.5, -0.3, 0.3, 0.3, 0.3},
- visual = "sprite",
- visual_size = {x=0.6666, y=1},
- textures = {"testentities_dungeon_master.png^[makealpha:128,0,0^[makealpha:128,128,0"},
- spritediv = {x=6, y=5},
- initial_sprite_basepos = {x=0, y=0},
- },
- on_activate = function(self, staticdata)
- self.object:set_sprite({x=0, y=0}, 3, 0.5, true)
- end,
- })
- -- An entity for testing animated upright sprites
- core.register_entity("testentities:upright_animated", {
- initial_properties = {
- visual = "upright_sprite",
- textures = {"testnodes_anim.png"},
- spritediv = {x = 1, y = 4},
- },
- on_activate = function(self)
- self.object:set_sprite({x=0, y=0}, 4, 1.0, false)
- end,
- })
- core.register_entity("testentities:nametag", {
- initial_properties = {
- visual = "sprite",
- textures = { "testentities_sprite.png" },
- },
- on_activate = function(self, staticdata)
- if staticdata ~= "" then
- local data = core.deserialize(staticdata)
- self.color = data.color
- self.bgcolor = data.bgcolor
- else
- self.color = {
- r = math.random(0, 255),
- g = math.random(0, 255),
- b = math.random(0, 255),
- }
- if math.random(0, 10) > 5 then
- self.bgcolor = {
- r = math.random(0, 255),
- g = math.random(0, 255),
- b = math.random(0, 255),
- a = math.random(0, 255),
- }
- end
- end
- assert(self.color)
- self.object:set_properties({
- nametag = tostring(math.random(1000, 10000)),
- nametag_color = self.color,
- nametag_bgcolor = self.bgcolor,
- })
- end,
- get_staticdata = function(self)
- return core.serialize({ color = self.color, bgcolor = self.bgcolor })
- end,
- })
|