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: Chest,
|
||||
stats: Direct((
|
||||
protection: Some(Normal(0.0)),
|
||||
poise_resilience: Some(Normal(0.0)),
|
||||
protection: Some(Normal(60.0)),
|
||||
poise_resilience: Some(Normal(8.0)),
|
||||
)),
|
||||
)),
|
||||
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: Chest,
|
||||
stats: Direct((
|
||||
protection: Some(Normal(100.0)),
|
||||
protection: Some(Normal(75.0)),
|
||||
poise_resilience: Some(Normal(2.0)),
|
||||
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,
|
||||
)),
|
||||
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::Mindflayer => 1250,
|
||||
biped_large::Species::Tidalwarrior => 1600,
|
||||
biped_large::Species::Yeti => 1200,
|
||||
biped_large::Species::Yeti => 1800,
|
||||
biped_large::Species::Minotaur => 3000,
|
||||
biped_large::Species::Harvester => 1500,
|
||||
biped_large::Species::Blueoni => 240,
|
||||
|
@ -923,6 +923,7 @@ impl LoadoutBuilder {
|
||||
| biped_large::Species::Blueoni
|
||||
| biped_large::Species::Redoni
|
||||
| biped_large::Species::Cavetroll
|
||||
| biped_large::Species::Tursus
|
||||
| biped_large::Species::Wendigo => {
|
||||
Some("common.items.npc_armor.biped_large.generic")
|
||||
},
|
||||
@ -964,7 +965,8 @@ impl LoadoutBuilder {
|
||||
| quadruped_low::Species::Rocksnapper
|
||||
| quadruped_low::Species::Rootsnapper
|
||||
| quadruped_low::Species::Reefsnapper
|
||||
| quadruped_low::Species::Sandshark => {
|
||||
| quadruped_low::Species::Sandshark
|
||||
| quadruped_low::Species::Icedrake => {
|
||||
Some("common.items.npc_armor.quadruped_low.generic")
|
||||
},
|
||||
quadruped_low::Species::Dagon => Some("common.items.npc_armor.quadruped_low.dagon"),
|
||||
@ -974,6 +976,9 @@ impl LoadoutBuilder {
|
||||
_ => None,
|
||||
},
|
||||
Body::QuadrupedMedium(body) => match body.species {
|
||||
quadruped_medium::Species::Frostfang => {
|
||||
Some("common.items.npc_armor.quadruped_medium.frostfang")
|
||||
},
|
||||
quadruped_medium::Species::Roshwalr => {
|
||||
Some("common.items.npc_armor.quadruped_medium.roshwalr")
|
||||
},
|
||||
|
@ -335,7 +335,7 @@ impl Block {
|
||||
| SpriteKind::EmeraldSmall
|
||||
| SpriteKind::SapphireSmall => Some(3),
|
||||
SpriteKind::Lantern => Some(24),
|
||||
SpriteKind::SeashellLantern => Some(16),
|
||||
SpriteKind::SeashellLantern | SpriteKind::GlowIceCrystal => Some(16),
|
||||
SpriteKind::SeaDecorEmblem => Some(12),
|
||||
SpriteKind::SeaDecorBlock => Some(10),
|
||||
_ => None,
|
||||
|
@ -248,6 +248,8 @@ make_case_elim!(
|
||||
BoneKeyDoor = 0xDE,
|
||||
// FireBlock for Burning Buff
|
||||
FireBlock = 0xDF,
|
||||
IceCrystal = 0xE0,
|
||||
GlowIceCrystal = 0xE1,
|
||||
}
|
||||
);
|
||||
|
||||
@ -658,6 +660,8 @@ impl SpriteKind {
|
||||
| SpriteKind::DoorWide,
|
||||
| SpriteKind::BoneKeyhole
|
||||
| SpriteKind::BoneKeyDoor
|
||||
| SpriteKind::IceCrystal
|
||||
| SpriteKind::GlowIceCrystal
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -425,7 +425,6 @@ impl Structure for AdletStronghold {
|
||||
|
||||
#[cfg_attr(feature = "be-dyn-lib", export_name = "render_adletstronghold")]
|
||||
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| {
|
||||
Some(match (RandomField::new(0).get(wpos)) % 80 {
|
||||
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)),
|
||||
})
|
||||
}));
|
||||
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();
|
||||
|
||||
// Tunnel
|
||||
@ -688,8 +702,8 @@ impl Structure for AdletStronghold {
|
||||
)
|
||||
.clear();
|
||||
// Foundation
|
||||
let foundation = match RandomField::new(0).get((wpos).with_z(alt as i32)) % 3 {
|
||||
1 => painter
|
||||
let foundation = match RandomField::new(0).get((wpos).with_z(alt as i32)) % 5 {
|
||||
0 => painter
|
||||
.sphere(Aabb {
|
||||
min: (igloo_pos - 15).with_z(alt as i32 - 45 + 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,
|
||||
)
|
||||
.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
|
||||
.cone_with_radius(
|
||||
yetipit_center.with_z(level - (3 * down) + (room_size / 3) - 2),
|
||||
|
Loading…
Reference in New Issue
Block a user