mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
- sprites IceCrystal, GlowIceCrystal for yetipit
- rough creature balance
This commit is contained in:
parent
8c3b1f23ee
commit
25ef582f1a
@ -4,8 +4,8 @@ ItemDef(
|
|||||||
kind: Armor((
|
kind: Armor((
|
||||||
kind: Chest,
|
kind: Chest,
|
||||||
stats: Direct((
|
stats: Direct((
|
||||||
protection: Some(Normal(0.0)),
|
protection: Some(Normal(60.0)),
|
||||||
poise_resilience: Some(Normal(0.0)),
|
poise_resilience: Some(Normal(8.0)),
|
||||||
)),
|
)),
|
||||||
)),
|
)),
|
||||||
quality: Legendary,
|
quality: Legendary,
|
||||||
|
14
assets/common/items/npc_armor/quadruped_medium/frostfang.ron
Normal file
14
assets/common/items/npc_armor/quadruped_medium/frostfang.ron
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
ItemDef(
|
||||||
|
name: "Frostfang's Thick Skin",
|
||||||
|
description: "testing123",
|
||||||
|
kind: Armor((
|
||||||
|
kind: Chest,
|
||||||
|
stats: Direct((
|
||||||
|
protection: Some(Normal(60.0)),
|
||||||
|
poise_resilience: Some(Normal(2.0)),
|
||||||
|
energy_max: Some(10),
|
||||||
|
)),
|
||||||
|
)),
|
||||||
|
quality: Epic,
|
||||||
|
tags: [],
|
||||||
|
)
|
@ -4,7 +4,7 @@ ItemDef(
|
|||||||
kind: Armor((
|
kind: Armor((
|
||||||
kind: Chest,
|
kind: Chest,
|
||||||
stats: Direct((
|
stats: Direct((
|
||||||
protection: Some(Normal(100.0)),
|
protection: Some(Normal(75.0)),
|
||||||
poise_resilience: Some(Normal(2.0)),
|
poise_resilience: Some(Normal(2.0)),
|
||||||
energy_max: Some(10),
|
energy_max: Some(10),
|
||||||
)),
|
)),
|
||||||
|
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_0.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_0.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_1.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_1.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_2.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_2.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_3.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_3.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_4.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_4.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_5.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/glow_ice_crystal_5.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_0.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_0.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_1.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_1.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_10.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_10.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_11.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_11.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_2.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_2.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_3.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_3.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_4.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_4.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_5.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_5.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_6.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_6.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_7.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_7.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_8.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_8.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_9.vox
(Stored with Git LFS)
Normal file
BIN
assets/voxygen/voxel/sprite/crystal/ice_crystal_9.vox
(Stored with Git LFS)
Normal file
Binary file not shown.
@ -4316,4 +4316,104 @@ Candle: Some((
|
|||||||
],
|
],
|
||||||
wind_sway: 0.0,
|
wind_sway: 0.0,
|
||||||
)),
|
)),
|
||||||
|
IceCrystal: Some((
|
||||||
|
variations: [
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_0",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_1",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_2",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_3",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_4",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_5",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_6",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_7",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_8",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_9",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_10",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.ice_crystal_11",
|
||||||
|
offset: (-5.5, -5.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
wind_sway: 0.0,
|
||||||
|
)),
|
||||||
|
GlowIceCrystal: Some((
|
||||||
|
variations: [
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_0",
|
||||||
|
offset: (8.5, -9.0, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_1",
|
||||||
|
offset: (-8.0, -8.0, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_2",
|
||||||
|
offset: (-11.5, -22.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_3",
|
||||||
|
offset: (-8.5, -9.0, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_4",
|
||||||
|
offset: (-8.0, -8.0, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
(
|
||||||
|
model: "voxygen.voxel.sprite.crystal.glow_ice_crystal_5",
|
||||||
|
offset: (-11.5, -22.5, 0.0),
|
||||||
|
lod_axes: (0.0, 0.0, 0.0),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
wind_sway: 0.0,
|
||||||
|
)),
|
||||||
}
|
}
|
||||||
|
@ -794,7 +794,7 @@ impl Body {
|
|||||||
biped_large::Species::Dullahan => 600,
|
biped_large::Species::Dullahan => 600,
|
||||||
biped_large::Species::Mindflayer => 1250,
|
biped_large::Species::Mindflayer => 1250,
|
||||||
biped_large::Species::Tidalwarrior => 1600,
|
biped_large::Species::Tidalwarrior => 1600,
|
||||||
biped_large::Species::Yeti => 1200,
|
biped_large::Species::Yeti => 1800,
|
||||||
biped_large::Species::Minotaur => 3000,
|
biped_large::Species::Minotaur => 3000,
|
||||||
biped_large::Species::Harvester => 1500,
|
biped_large::Species::Harvester => 1500,
|
||||||
biped_large::Species::Blueoni => 240,
|
biped_large::Species::Blueoni => 240,
|
||||||
|
@ -923,6 +923,7 @@ impl LoadoutBuilder {
|
|||||||
| biped_large::Species::Blueoni
|
| biped_large::Species::Blueoni
|
||||||
| biped_large::Species::Redoni
|
| biped_large::Species::Redoni
|
||||||
| biped_large::Species::Cavetroll
|
| biped_large::Species::Cavetroll
|
||||||
|
| biped_large::Species::Tursus
|
||||||
| biped_large::Species::Wendigo => {
|
| biped_large::Species::Wendigo => {
|
||||||
Some("common.items.npc_armor.biped_large.generic")
|
Some("common.items.npc_armor.biped_large.generic")
|
||||||
},
|
},
|
||||||
@ -964,7 +965,8 @@ impl LoadoutBuilder {
|
|||||||
| quadruped_low::Species::Rocksnapper
|
| quadruped_low::Species::Rocksnapper
|
||||||
| quadruped_low::Species::Rootsnapper
|
| quadruped_low::Species::Rootsnapper
|
||||||
| quadruped_low::Species::Reefsnapper
|
| quadruped_low::Species::Reefsnapper
|
||||||
| quadruped_low::Species::Sandshark => {
|
| quadruped_low::Species::Sandshark
|
||||||
|
| quadruped_low::Species::Icedrake => {
|
||||||
Some("common.items.npc_armor.quadruped_low.generic")
|
Some("common.items.npc_armor.quadruped_low.generic")
|
||||||
},
|
},
|
||||||
quadruped_low::Species::Dagon => Some("common.items.npc_armor.quadruped_low.dagon"),
|
quadruped_low::Species::Dagon => Some("common.items.npc_armor.quadruped_low.dagon"),
|
||||||
@ -974,6 +976,9 @@ impl LoadoutBuilder {
|
|||||||
_ => None,
|
_ => None,
|
||||||
},
|
},
|
||||||
Body::QuadrupedMedium(body) => match body.species {
|
Body::QuadrupedMedium(body) => match body.species {
|
||||||
|
quadruped_medium::Species::Frostfang => {
|
||||||
|
Some("common.items.npc_armor.quadruped_medium.frostfang")
|
||||||
|
},
|
||||||
quadruped_medium::Species::Roshwalr => {
|
quadruped_medium::Species::Roshwalr => {
|
||||||
Some("common.items.npc_armor.quadruped_medium.roshwalr")
|
Some("common.items.npc_armor.quadruped_medium.roshwalr")
|
||||||
},
|
},
|
||||||
|
@ -335,7 +335,7 @@ impl Block {
|
|||||||
| SpriteKind::EmeraldSmall
|
| SpriteKind::EmeraldSmall
|
||||||
| SpriteKind::SapphireSmall => Some(3),
|
| SpriteKind::SapphireSmall => Some(3),
|
||||||
SpriteKind::Lantern => Some(24),
|
SpriteKind::Lantern => Some(24),
|
||||||
SpriteKind::SeashellLantern => Some(16),
|
SpriteKind::SeashellLantern | SpriteKind::GlowIceCrystal => Some(16),
|
||||||
SpriteKind::SeaDecorEmblem => Some(12),
|
SpriteKind::SeaDecorEmblem => Some(12),
|
||||||
SpriteKind::SeaDecorBlock => Some(10),
|
SpriteKind::SeaDecorBlock => Some(10),
|
||||||
_ => None,
|
_ => None,
|
||||||
|
@ -248,6 +248,8 @@ make_case_elim!(
|
|||||||
BoneKeyDoor = 0xDE,
|
BoneKeyDoor = 0xDE,
|
||||||
// FireBlock for Burning Buff
|
// FireBlock for Burning Buff
|
||||||
FireBlock = 0xDF,
|
FireBlock = 0xDF,
|
||||||
|
IceCrystal = 0xE0,
|
||||||
|
GlowIceCrystal = 0xE1,
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -658,6 +660,8 @@ impl SpriteKind {
|
|||||||
| SpriteKind::DoorWide,
|
| SpriteKind::DoorWide,
|
||||||
| SpriteKind::BoneKeyhole
|
| SpriteKind::BoneKeyhole
|
||||||
| SpriteKind::BoneKeyDoor
|
| SpriteKind::BoneKeyDoor
|
||||||
|
| SpriteKind::IceCrystal
|
||||||
|
| SpriteKind::GlowIceCrystal
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -425,7 +425,6 @@ impl Structure for AdletStronghold {
|
|||||||
|
|
||||||
#[cfg_attr(feature = "be-dyn-lib", export_name = "render_adletstronghold")]
|
#[cfg_attr(feature = "be-dyn-lib", export_name = "render_adletstronghold")]
|
||||||
fn render_inner(&self, _site: &Site, land: &Land, painter: &Painter) {
|
fn render_inner(&self, _site: &Site, land: &Land, painter: &Painter) {
|
||||||
// let wall_mat = Fill::Brick(BlockKind::Snow, Rgb::new(175, 175, 175), 25);
|
|
||||||
let snow_ice_fill = Fill::Sampling(Arc::new(|wpos| {
|
let snow_ice_fill = Fill::Sampling(Arc::new(|wpos| {
|
||||||
Some(match (RandomField::new(0).get(wpos)) % 80 {
|
Some(match (RandomField::new(0).get(wpos)) % 80 {
|
||||||
0..=3 => Block::new(BlockKind::Ice, Rgb::new(120, 160, 255)),
|
0..=3 => Block::new(BlockKind::Ice, Rgb::new(120, 160, 255)),
|
||||||
@ -461,6 +460,21 @@ impl Structure for AdletStronghold {
|
|||||||
_ => Block::new(BlockKind::Air, Rgb::new(0, 0, 0)),
|
_ => Block::new(BlockKind::Air, Rgb::new(0, 0, 0)),
|
||||||
})
|
})
|
||||||
}));
|
}));
|
||||||
|
let yeti_sprites_fill = Fill::Sampling(Arc::new(|wpos| {
|
||||||
|
Some(match (RandomField::new(0).get(wpos)) % 80 {
|
||||||
|
0..=2 => Block::air(SpriteKind::Bones),
|
||||||
|
4..=5 => Block::air(SpriteKind::GlowIceCrystal),
|
||||||
|
6..=8 => Block::air(SpriteKind::IceCrystal),
|
||||||
|
9..=15 => Block::new(BlockKind::Snow, Rgb::new(255, 255, 255)),
|
||||||
|
_ => Block::new(BlockKind::Air, Rgb::new(0, 0, 0)),
|
||||||
|
})
|
||||||
|
}));
|
||||||
|
let yeti_bones_fill = Fill::Sampling(Arc::new(|wpos| {
|
||||||
|
Some(match (RandomField::new(0).get(wpos)) % 20 {
|
||||||
|
0 => Block::air(SpriteKind::Bones),
|
||||||
|
_ => Block::new(BlockKind::Air, Rgb::new(0, 0, 0)),
|
||||||
|
})
|
||||||
|
}));
|
||||||
let mut rng = thread_rng();
|
let mut rng = thread_rng();
|
||||||
|
|
||||||
// Tunnel
|
// Tunnel
|
||||||
@ -688,8 +702,8 @@ impl Structure for AdletStronghold {
|
|||||||
)
|
)
|
||||||
.clear();
|
.clear();
|
||||||
// Foundation
|
// Foundation
|
||||||
let foundation = match RandomField::new(0).get((wpos).with_z(alt as i32)) % 3 {
|
let foundation = match RandomField::new(0).get((wpos).with_z(alt as i32)) % 5 {
|
||||||
1 => painter
|
0 => painter
|
||||||
.sphere(Aabb {
|
.sphere(Aabb {
|
||||||
min: (igloo_pos - 15).with_z(alt as i32 - 45 + height_handle),
|
min: (igloo_pos - 15).with_z(alt as i32 - 45 + height_handle),
|
||||||
max: (igloo_pos + 15).with_z(alt as i32 - 15 + height_handle),
|
max: (igloo_pos + 15).with_z(alt as i32 - 15 + height_handle),
|
||||||
@ -1081,6 +1095,44 @@ impl Structure for AdletStronghold {
|
|||||||
((room_size / 3) + 5) as f32,
|
((room_size / 3) + 5) as f32,
|
||||||
)
|
)
|
||||||
.clear();
|
.clear();
|
||||||
|
painter
|
||||||
|
.cylinder_with_radius(
|
||||||
|
yetipit_center.with_z(level - (3 * down) - 6),
|
||||||
|
room_size as f32,
|
||||||
|
1.0,
|
||||||
|
)
|
||||||
|
.fill(snow_ice_fill.clone());
|
||||||
|
// sprites: icecrystals, bones
|
||||||
|
for r in 0..4 {
|
||||||
|
painter
|
||||||
|
.cylinder_with_radius(
|
||||||
|
yetipit_center.with_z(level - (3 * down) - 2 - r),
|
||||||
|
(room_size + 2 - r) as f32,
|
||||||
|
1.0,
|
||||||
|
)
|
||||||
|
.fill(snow_ice_fill.clone());
|
||||||
|
painter
|
||||||
|
.cylinder_with_radius(
|
||||||
|
yetipit_center.with_z(level - (3 * down) - 1 - r),
|
||||||
|
(room_size - r) as f32,
|
||||||
|
1.0,
|
||||||
|
)
|
||||||
|
.fill(yeti_sprites_fill.clone());
|
||||||
|
painter
|
||||||
|
.cylinder_with_radius(
|
||||||
|
yetipit_center.with_z(level - (3 * down) - 2 - r),
|
||||||
|
(room_size - 1 - r) as f32,
|
||||||
|
2.0,
|
||||||
|
)
|
||||||
|
.clear();
|
||||||
|
}
|
||||||
|
painter
|
||||||
|
.cylinder_with_radius(
|
||||||
|
yetipit_center.with_z(level - (3 * down) - 5),
|
||||||
|
(room_size - 4) as f32,
|
||||||
|
1.0,
|
||||||
|
)
|
||||||
|
.fill(yeti_bones_fill.clone());
|
||||||
painter
|
painter
|
||||||
.cone_with_radius(
|
.cone_with_radius(
|
||||||
yetipit_center.with_z(level - (3 * down) + (room_size / 3) - 2),
|
yetipit_center.with_z(level - (3 * down) + (room_size / 3) - 2),
|
||||||
|
Loading…
Reference in New Issue
Block a user