Newer
Older
DungeonShooting / DungeonShooting_Godot / src / game / activity / bullet / normal / TrailBullet.cs
  1.  
  2. using Godot;
  3.  
  4. [Tool]
  5. public partial class TrailBullet : Bullet
  6. {
  7. private static Color TerrainColor = new Color(0xf5 / 255f + 0.8f, 0x7e / 255f + 0.45f, 0x7a / 255f + 0.45f, 0.7f);
  8. private static Color EnemyTerrainColor = new Color(1.5f, 0, 0, 0.7f);
  9. private Trail trail;
  10.  
  11. public override void InitData(BulletData data, CampEnum camp)
  12. {
  13. base.InitData(data, camp);
  14. trail = ObjectManager.GetPoolItem<Trail>(ResourcePath.prefab_effect_common_Trail0001_tscn);
  15. trail.SetTarget(AnimatedSprite);
  16. trail.AddPoint(trail.Target.GlobalPosition);
  17. trail.AddToActivityRoot(RoomLayerEnum.YSortLayer);
  18. trail.ZIndex = 1;
  19. if (IsEnemyBullet)
  20. {
  21. trail.SetColor(EnemyTerrainColor);
  22. }
  23. else
  24. {
  25. trail.SetColor(TerrainColor);
  26. }
  27. }
  28.  
  29.  
  30. public override void OnReclaim()
  31. {
  32. base.OnReclaim();
  33. trail.SetTarget(null);
  34. trail = null;
  35. }
  36. }