Commit e5d2e824491162643a4ce8fa2a3039de5d71cc2d

Authored by DarkGod
1 parent d3e80add

fix butcher

... ... @@ -891,6 +891,16 @@ function _M:changeLevelReal(lev, zone, params)
891 891 end
892 892 end end
893 893 if #list > 0 then x, y = unpack(rng.table(list)) end
  894 + elseif params.auto_level_stair then
  895 + -- Dirty but quick
  896 + local list = {}
  897 + for i = 0, self.level.map.w - 1 do for j = 0, self.level.map.h - 1 do
  898 + local idx = i + j * self.level.map.w
  899 + if self.level.map.map[idx][Map.TERRAIN] and not self.level.map.map[idx][Map.TERRAIN].change_zone and self.level.map.map[idx][Map.TERRAIN].change_level == old_lev - self.level.level then
  900 + list[#list+1] = {i, j}
  901 + end
  902 + end end
  903 + if #list > 0 then x, y = unpack(rng.table(list)) end
894 904 end
895 905
896 906 -- Default to stairs
... ... @@ -1671,7 +1681,7 @@ do return end
1671 1681 else
1672 1682 -- Do not unpause, the player is allowed first move on next level
1673 1683 if e.change_level_check and e:change_level_check(self.player) then return end
1674   - self:changeLevel(e.change_zone and e.change_level or self.level.level + e.change_level, e.change_zone, {keep_old_lev=e.keep_old_lev, force_down=e.force_down, auto_zone_stair=e.change_zone_auto_stairs, temporary_zone_shift_back=e.change_level_shift_back})
  1684 + self:changeLevel(e.change_zone and e.change_level or self.level.level + e.change_level, e.change_zone, {keep_old_lev=e.keep_old_lev, force_down=e.force_down, auto_zone_stair=e.change_zone_auto_stairs, auto_level_stair=e.change_level_auto_stairs, temporary_zone_shift_back=e.change_level_shift_back})
1675 1685 end
1676 1686 else
1677 1687 self.log("There is no way out of this level here.")
... ...
... ... @@ -898,8 +898,8 @@ newEntity{ base = "BASE_WARAXE",
898 898 rarity = 220,
899 899 cost = 50,
900 900 combat = {
901   - dam = 18,
902   - apr = 3,
  901 + dam = 20,
  902 + apr = 4,
903 903 physcrit = 12,
904 904 dammod = {str=1},
905 905 talent_on_hit = { [Talents.T_GREATER_WEAPON_FOCUS] = {level=2, chance=10} },
... ...
... ... @@ -3422,23 +3422,30 @@ newEntity{ base = "BASE_WHIP", --Thanks Grayswandir!
3422 3422 require = { stat = { dex=14 }, },
3423 3423 cost = 150,
3424 3424 rarity = 325,
3425   - level_range = {4, 12},
  3425 + level_range = {40, 50},
3426 3426 metallic = false,
3427   - material_level = 1,
  3427 + material_level = 5,
3428 3428 combat = {
3429   - dam = 19,
  3429 + dam = 55,
3430 3430 apr = 8,
3431   - physcrit = 5,
  3431 + physcrit = 9,
3432 3432 dammod = {dex=1},
3433   - melee_project={[DamageType.BLEED] = 15},
  3433 + melee_project={[DamageType.BLEED] = 30},
3434 3434 burst_on_crit = {
3435   - [DamageType.BLEED] = 20,
  3435 + [DamageType.BLEED] = 50,
3436 3436 },
3437   - talent_on_hit = { [Talents.T_BONE_GRAB] = {level=1, chance=20} },
  3437 + talent_on_hit = { [Talents.T_BONE_GRAB] = {level=3, chance=10}, [Talents.T_BONE_SPEAR] = {level=4, chance=20} },
  3438 +
3438 3439 },
3439   - max_power = 24, power_regen = 1,
3440   - use_talent = { id = Talents.T_BONE_NOVA, level = 2, power = 24 },
3441   - talent_on_spell = { {chance=10, talent=Talents.T_BONE_SPEAR, level=2} },
  3440 + wielder = {
  3441 + combat_def = 12,
  3442 + combat_spellpower = 4,
  3443 + combat_physspeed = 0.1,
  3444 + talents_types_mastery = { ["corruption/bone"] = 0.25, },
  3445 + },
  3446 + max_power = 20, power_regen = 1,
  3447 + use_talent = { id = Talents.T_BONE_NOVA, level = 4, power = 20 },
  3448 + talent_on_spell = { {chance=10, talent=Talents.T_BONE_SPEAR, level=4} },
3442 3449 }
3443 3450
3444 3451 newEntity{ base = "BASE_MINDSTAR",
... ... @@ -3447,7 +3454,7 @@ newEntity{ base = "BASE_MINDSTAR",
3447 3454 name = "Core of the Forge", image = "object/artifact/core_of_the_forge.png",
3448 3455 unided_name = "fiery mindstar",
3449 3456 level_range = {38, 50},
3450   - color=colors.RED, image = "object/artifact/nexus_of_the_way.png",
  3457 + color=colors.RED,
3451 3458 rarity = 350,
3452 3459 desc = [[This blazing hot mindstar beats rhythmically, releasing a burst of heat with each strike.]],
3453 3460 cost = 280,
... ... @@ -3461,7 +3468,7 @@ newEntity{ base = "BASE_MINDSTAR",
3461 3468 damtype = DamageType.DREAMFORGE,
3462 3469 },
3463 3470 wielder = {
3464   - combat_mindpower = 14,
  3471 + combat_mindpower = 15,
3465 3472 combat_mindcrit = 8,
3466 3473 combat_atk=10,
3467 3474 combat_dam=10,
... ... @@ -3591,7 +3598,7 @@ newEntity{ base = "BASE_ARROW", --Thanks Grayswandir!
3591 3598 power_source = {arcane=true},
3592 3599 unique = true,
3593 3600 name = "Void Quiver",
3594   - unided_name = "etheral quiver",
  3601 + unided_name = "ethereal quiver",
3595 3602 desc = [[An endless supply of arrows lay within this deep black quiver. Tiny white lights dot its surface.]],
3596 3603 color = colors.BLUE, image = "object/artifact/void_quiver.png",
3597 3604 level_range = {35, 50},
... ... @@ -3605,7 +3612,7 @@ newEntity{ base = "BASE_ARROW", --Thanks Grayswandir!
3605 3612 dam = 45,
3606 3613 apr = 30, --No armor can stop the void
3607 3614 physcrit = 6,
3608   - dammod = {dex=0.7, str=0.5},
  3615 + dammod = {dex=0.7, str=0.5, mag=0.1,},
3609 3616 damtype = DamageType.VOID,
3610 3617 talent_on_hit = { [Talents.T_QUANTUM_SPIKE] = {level=1, chance=10}, [Talents.T_TEMPORAL_CLONE] = {level=1, chance=5} },
3611 3618 },
... ... @@ -5440,7 +5447,7 @@ newEntity{ base = "BASE_LONGSWORD",
5440 5447 local Talents = require "engine.interface.ActorTalents"
5441 5448 o.running=true
5442 5449 if target:canBe("instakill") then
5443   - who:forceUseTalent(Talents.T_DEVOUR, {ignore_cd=true, ignore_energy=true, force_target=target, force_level=4, ignore_ressources=true})
  5450 + who:forceUseTalent(Talents.T_SWALLOW, {ignore_cd=true, ignore_energy=true, force_target=target, force_level=4, ignore_ressources=true})
5444 5451 end
5445 5452 o.running=false
5446 5453 end},
... ...
... ... @@ -19,6 +19,11 @@
19 19
20 20 base_size = 32
21 21
  22 +rm, rM = rm or 180, rM or 220
  23 +gm, gM = gm or 0, gM or 0
  24 +bm, bM = bm or 200, bM or 255
  25 +am, aM = am or 80, aM or 255
  26 +
22 27 return {
23 28 base = 1000,
24 29
... ... @@ -27,10 +32,10 @@ return {
27 32 life = { 20, 30 },
28 33 size = { 15, 35 }, sizev = {0, 0}, sizea = {0, 0},
29 34
30   - r = {180, 220}, rv = {0, 10}, ra = {0, 0},
31   - g = {0, 0}, gv = {0, 0}, ga = {0, 0},
32   - b = {200, 255}, bv = {0, 10}, ba = {0, 0},
33   - a = {80, 255}, av = {0, 0}, aa = {0, 0},
  35 + r = {rm, rM}, rv = {0, 10}, ra = {0, 0},
  36 + g = {gm, gM}, gv = {0, 0}, ga = {0, 0},
  37 + b = {bm, bM}, bv = {0, 10}, ba = {0, 0},
  38 + a = {am, aM}, av = {0, 0}, aa = {0, 0},
34 39
35 40 }, function(self)
36 41 self.nb = (self.nb or 0) + 1
... ...