mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-28 06:51:54 +08:00
feat(武器): 新增道教石像武器及无为子弹
添加道教石像武器资源文件、脚本和场景配置 实现无为子弹的碰撞检测和动画效果 调整树武器的伤害计算方式,现在基于格挡率 优化游戏波次配置,调整敌人数量和出现时机 修复初始选择面板在发布模式下的逻辑问题
This commit is contained in:
@@ -21,13 +21,13 @@ func spawn():
|
||||
eff.texture.sprite_frames = frames
|
||||
eff.shot()
|
||||
func succeedToHit(_dmg: float, entity: EntityBase):
|
||||
if parryiedTimes < maxParryTimes:
|
||||
if parryiedTimes < maxParryTimes && MathTool.rate(parryRate):
|
||||
parryiedTimes += 1
|
||||
var effSpawn = entity.texture.global_position
|
||||
var eff = EffectController.create(ComponentManager.getEffect("ParryEntity"), effSpawn)
|
||||
eff.rotation = position.angle_to_point(effSpawn)
|
||||
eff.shot()
|
||||
entity.impluse((effSpawn - position).normalized() * 600)
|
||||
entity.impluse((effSpawn - position).normalized() * 450)
|
||||
func hitBullet(bullet: BulletBase): # 当前子弹与其他子弹相撞
|
||||
if BulletTool.canDamage(bullet, launcher): # 其他子弹可以使当前子弹的发射者受伤吗?
|
||||
if parryiedTimes < maxParryTimes && MathTool.rate(parryRate): # 一个刀光最多格挡多少个敌方子弹?
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
extends BulletBase
|
||||
class_name WuweiBullet
|
||||
@@ -2,4 +2,4 @@ extends ParryEffect
|
||||
class_name ParryEntityEffect
|
||||
|
||||
func beforeShot():
|
||||
CameraManager.shake(100, 200)
|
||||
CameraManager.shake(50, 200)
|
||||
|
||||
@@ -21,15 +21,17 @@ func beforeOpen(_args: Array = []):
|
||||
initialWeaponSelection.add_child(card)
|
||||
card.selected.connect(
|
||||
func(_x):
|
||||
clearWeapons()
|
||||
title2.hide()
|
||||
if WorldManager.isRelease():
|
||||
clearWeapons()
|
||||
title2.hide()
|
||||
)
|
||||
else:
|
||||
initialFeedSelection.add_child(card)
|
||||
card.selected.connect(
|
||||
func(_x):
|
||||
clearFeeds()
|
||||
title1.hide()
|
||||
if WorldManager.isRelease():
|
||||
clearFeeds()
|
||||
title1.hide()
|
||||
)
|
||||
|
||||
func clearFeeds():
|
||||
|
||||
@@ -23,13 +23,13 @@ func duplicate() -> Wave:
|
||||
return wave
|
||||
|
||||
static var WAVE_NORMAL = [
|
||||
Wave.create("Hen", 1, 3, false, 0, INF, 1),
|
||||
Wave.create("Hen", 1, 3, false, 0, INF, 3),
|
||||
Wave.create("Cat", 1, 5, false, 0, INF, 1),
|
||||
Wave.create("Dog", 1, 2, false, 0, INF, 1),
|
||||
Wave.create("MTY", 0, 1, false, 4, INF, 4),
|
||||
Wave.create("Dog", 1, 2, false, 0, INF, 5),
|
||||
Wave.create("MTY", 0, 1, false, 4, INF, 7),
|
||||
Wave.create("Chick", 0, 0, true, 9, INF, 20),
|
||||
Wave.create("KukeMC", 0, 0, true, 19, INF, 20),
|
||||
Wave.create("Bear", 0, 0, true, 29, INF, 20),
|
||||
Wave.create("Bear", 0, 0, true, 29, INF, 23),
|
||||
]
|
||||
static var WAVE_TESTBOSS_ALL = [
|
||||
Wave.create("Chick", 0, 0, true, 0, INF, 3),
|
||||
@@ -49,7 +49,7 @@ static var WAVE_JUSTJOKE = [
|
||||
Wave.create("Kernyr", 0, 0, true, 0, INF, 1),
|
||||
]
|
||||
static var WAVE_EMPTY = []
|
||||
static var waveConfig = [WAVE_JUSTJOKE, 1]
|
||||
static var waveConfig = [WAVE_NORMAL, 1]
|
||||
|
||||
static var current: int = startWith(1) if WorldManager.isRelease() else startWith(waveConfig[1])
|
||||
static var data = WAVE_NORMAL if WorldManager.isRelease() else waveConfig[0]
|
||||
|
||||
@@ -19,5 +19,5 @@ func attack(entity: EntityBase):
|
||||
bullet.maxParryTimes = readStore("count")
|
||||
bullet.maxBallCount = readStore("max")
|
||||
bullet.reflectRate = readStore("rate")
|
||||
bullet.baseDamage = readStore("atk")
|
||||
bullet.baseDamage = readStore("atk") * readStore("rate")
|
||||
return true
|
||||
|
||||
@@ -41,10 +41,11 @@ func allHad(entity: EntityBase) -> bool:
|
||||
func apply(entity: EntityBase):
|
||||
var allHave = allHad(entity)
|
||||
if allHave:
|
||||
for i in range(min(costs.size(), costCounts.size())):
|
||||
var item = costs[i]
|
||||
var count = countOf(i)
|
||||
entity.inventory[item] -= count
|
||||
if !freeToBuy:
|
||||
for i in range(min(costs.size(), costCounts.size())):
|
||||
var item = costs[i]
|
||||
var count = countOf(i)
|
||||
entity.inventory[item] -= count
|
||||
for i in range(min(fields.size(), fieldValues.size())):
|
||||
var field = fields[i]
|
||||
var value = fieldValues[i]
|
||||
|
||||
Reference in New Issue
Block a user