Godot3で追い越し弾
同時に射出された弾が、初速と反比例して加速して追い越す弾
code:py
extends EnemyBase
export(int) var bullet_speed = 45
export(int) var bullet_num = 8
onready var use_bullet = preload("res://Scenes/Bullets/E_Bullet_red_8x8.tscn")
var cycle = 0
func _shoot(player):
# 重なって発射されて追い越す弾
cycle %= spread_num_cycle.size()
var spread_num = spread_num_cyclecycle cycle += 1
for i in spread_num + 1:
for j in bullet_num:
var bullet = use_bullet.instance()
bullet.position = Vector2(16,16)
_add_bullet_to_root(bullet)
bullet.speed = bullet_speed
bullet.dir = Vector2(1,1).rotated((PI / 2 / spread_num) * i)
bullet.dir = bullet.dir * pow(0.93, j)
bullet.dir_add = bullet.dir * j * .006
pow()で、射出数 j に比例して初速を減らしておく
j に比例して加速度を設定しておく
https://gyazo.com/db06c787dbed79005871724cd1212c35