22.06.2015, 06:35
Здравствуйте, возникла проблема. При перезагрузке не сохраняются данные и выводит "Invalid orm id" в лог. Когда делаю перезагрузку сразу после загрузки данных, всё сохраняется и ошибок никаких не выводит.
Существует ли время действия сценария ORM?
OnGameModeInit
OnGameModeExit
mysql_log
Существует ли время действия сценария ORM?
OnGameModeInit
Код:
mysql_pquery(connects, "SELECT * FROM `family`", "load_family","");
Код:
publics: load_family() { if(cache_num_rows() == 0) return true; new f, fid; for(f = 0; f < cache_num_rows(); f++) { fid = f+1; new ORM:ormid = f_info[fid][ORM_f_id] = orm_create("family"); orm_addvar_int(ormid, f_info[fid][f_id], "id"); orm_setkey(ormid, "id"); orm_addvar_string(ormid, f_info[fid][f_name], 24, "name"); orm_addvar_int(ormid, f_info[fid][f_item], "item"); orm_addvar_int(ormid, f_info[fid][f_leader], "leader"); orm_addvar_int(ormid, f_info[fid][f_bank], "bank"); orm_addvar_int(ormid, f_info[fid][f_mats], "mats"); orm_addvar_float(ormid, f_info[fid][f_x], "x"); orm_addvar_float(ormid, f_info[fid][f_y], "y"); orm_addvar_float(ormid, f_info[fid][f_z], "z"); orm_addvar_float(ormid, f_info[fid][f_p], "p"); orm_addvar_int(ormid, f_info[fid][f_int], "int"); orm_addvar_int(ormid, f_info[fid][f_vw], "vw"); orm_apply_cache(ormid, f); } return true; }
Код:
save_family();
Код:
stock save_family() { for(new fid = 1; fid < MAX_FRAC; fid++) { orm_update(f_info[fid][ORM_f_id]); orm_destroy(f_info[fid][ORM_f_id]); reset_f_info(fid); } return true; } stock reset_f_info(fid) { f_info[fid][f_id] = 0; f_info[fid][f_name][0] = 0; f_info[fid][f_item] = 0; f_info[fid][f_leader] = 0; f_info[fid][f_bank] = 0; f_info[fid][f_mats] = 0; f_info[fid][f_x] = 0; f_info[fid][f_y] = 0; f_info[fid][f_z] = 0; f_info[fid][f_p] = 0; f_info[fid][f_int] = 0; f_info[fid][f_vw] = 0; return true; }
Код:
[ERROR] "orm_update" - invalid orm id (id: 1) [ERROR] "orm_destroy" - invalid orm id (id: 1)