void Projectile::Init(const Resource_Projectile_t &data, bool playerOwner)
{
    this->playerOwner = playerOwner;
    this->data = data;

    SetSize(Vector2D(data.size, data.size));

    ParticleSystem *particlesSpawn = nullptr;

    if (!data.particle_trail.empty())
        particlesIdle = GetGameContext()->GetParticleRoot()->CreateParticles(data.particle_trail.c_str());
    if (!data.particle_spawn.empty())
        particlesSpawn = GetGameContext()->GetParticleRoot()->CreateParticles(data.particle_spawn.c_str());

    if (!particlesIdle.isNull())
        particlesIdle->SetParticleParent(this);
    if (particlesSpawn != nullptr)
        particlesSpawn->SetParticleParent(this);
}