Page 1 of 1

Render layer

Posted: Thu Mar 20, 2014 4:22 pm
by ficolas
Can I change the render layer of every entity?
Im trying to change the render layer of a player entity so it is rendered on top of everything, like logistic bots, but I cant...
I have tried with render_layer (because seems more logic to me) and with final render layer (because is what I have seen in prototipe definitions)

Code: Select all

  {
    type = "player",
	collision_mask="randomstringbecauseitneedsatableandwithastringitdoesnthaveanycollisionmask?",
	render_layer="higher-object-above",
	final_render_layer = "higher-object-above",
    name = "remote-controlled-robot",
    icon = "__base__/graphics/icons/logistic-robot.png",
    flags = {"placeable-player", "placeable-off-grid"},
	mining_categories = {"basic-solid"},
    max_health = 100,
    healing_per_tick = 0.01,
    collision_box = {{-1.4, -0.4}, {0.4, 0.4}},
    selection_box = {{-1.4, -0.4}, {0.4, 0.4}},
    crafting_categories = {"robot"},
    inventory_size = 10,
    running_speed = 0.15,
    distance_per_frame = 0.13,
    maximum_corner_sliding_distance = 0.7,
    order="a",
    eat =
    {
      {
        filename = "__base__/sound/eat.wav",
        volume = 0
      }
    },
    heartbeat =
    {
      {
        filename = "__base__/sound/heartbeat.wav",
        volume = 0
      }
    },
    idle_animation =
    {
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      direction_count = 5,
      frame_count = 3,
      stripes =
      {
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        }
      },
      shift = {0, -0.5}
    },
    idle_with_gun_animation =
    {
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      direction_count = 5,
      frame_count = 3,
      stripes =
      {
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        }
      },
      shift = {0, -0.5}
    },
    light =
    {
      {
        minimum_darkness = 0.3,
        intensity = 0.4,
        size = 25,
      },
      {
        type = "oriented",
        minimum_darkness = 0.3,
        picture =
        {
          filename = "__core__/graphics/light-cone.png",
          priority = "medium",
          scale = 2,
          width = 200,
          height = 200
        },
        shift = {0, -13},
        size = 2,
        intensity = 0.6
      },
    },
    mining_speed = 0.01,
    mining_with_hands_animation =
    {
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      direction_count = 5,
      frame_count = 2,
      stripes =
      {
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        }
      },
      shift = {0, -0.5}
    },
    mining_with_hands_particles_animation_positions = {29, 63},
    mining_with_tool_animation =
    {
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      direction_count = 5,
      frame_count = 2,
      stripes =
      {
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        },
        {
          filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
          width_in_frames = 1
        }
      },
      shift = {0, -0.5}
    },
    mining_with_tool_particles_animation_positions = {28},
    running_aim =
    {
      filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      frame_count = 1,
      direction_count = 5,
      shift = {0, -0.5}
    },
    running_animation =
    {
      filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      frame_count = 1,
      direction_count = 5,
      shift = {0, -0.5}
    },
    running_mask_animation =
    {
      filename = "__F-mod__/resources/entity/remote-controlled-robot/remote-controlled-robot.png",
      priority = "medium",
      frame_width = 48,
      frame_height = 66,
      frame_count = 1,
      direction_count = 5,
      shift = {0, -0.5}
    },
    running_sound_animation_positions = {14, 29}
  },
  }

Re: Render layer

Posted: Thu Mar 20, 2014 4:33 pm
by kovarex
Hi, the only places where the render layer are moddable now are decorative + the corpse.
We can extend the list, but it would be problematic for some things as they are composed of more pictures from more layers (inserter for example).

Re: Render layer

Posted: Thu Mar 20, 2014 4:35 pm
by ficolas
kovarex wrote:Hi, the only places where the render layer are moddable now are decorative + the corpse.
We can extend the list, but it would be problematic for some things as they are composed of more pictures from more layers (inserter for example).
Ahh... so I guess for inserters we would need to specify two layers?
This would be a pretty nice feature I think anyways :)