Witam.
Od czasu do czasu na serwerze PB zdarzają się crashe. Podejrzewam, że mają one związek z usuwaniem kulek.
W kodzie znalazlem pewną nieścisłość: kulki nie do końca są usuwane, jedynie ich rozmiar, miejsce i renderowanie jest zmieniane
public paint_reset(ent) { remove_task(ent); ent -= TASK_PB_RESET; new a, findpb = 1; while (a++ <= g_pbcount && findpb) if (g_paintballs[a] == ent) findpb = g_pbstatus[a] = 0 set_pev(ent, pev_effects, pev(ent, pev_effects) | EF_NODRAW); engfunc(EngFunc_SetSize, ent, Float:{0.0, 0.0, 0.0}, Float:{0.0, 0.0, 0.0}); set_pev(ent, pev_velocity, Float:{0.0, 0.0, 0.0}); engfunc(EngFunc_SetOrigin, ent, Float:{-2000.0, -2000.0, -2000.0}); if (pev(ent, pev_renderfx) != kRenderFxNone) set_rendering(ent); }
Ktoś doradził mi, aby zastosować coś takiego:
public paint_reset(ent) { remove_task(ent); ent -= TASK_PB_RESET; new a, findpb = 1; while (a++ <= g_pbcount && findpb) if (g_paintballs[a] == ent) findpb = g_pbstatus[a] = 0; engfunc(EngFunc_RemoveEntity, ent) }
Niestety po tym, przy pełnym serwerze crashe występują co chwilę (co około 30 sec)
Ma ktoś jeszcze jakieś pomysły?