Regarding Server source:
In your tutorial in db/ClientManagerPlayer.cpp following this step:
/*Search in:
void CClientManager::QUERY_PLAYER_LOAD(CPeer * peer, DWORD dwHandle, TPlayerLoadPacket * packet)
This:
"horse_skill_point "
Add after:
*/
#ifdef ENABLE_CHEQUE_SYSTEM
", cheque "
#endif
The only place where i have found what you told us to find is this structure inside the void CClientManager::QUERY_PLAYER_LOAD(...):
snprintf(queryStr, sizeof(queryStr),
"SELECT "
"id,name,job,voice,dir,x,y,z,map_index,exit_x,exit_y,exit_map_index,hp,mp,stamina,random_hp,random_sp,playtime,"
"gold,level,level_step,st,ht,dx,iq,exp,"
"stat_point,skill_point,sub_skill_point,stat_reset_count,part_base,part_hair,"
"skill_level,quickslot,skill_group,alignment,mobile,horse_level,horse_riding,horse_hp,horse_hp_droptime,horse_stamina,"
"UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(last_play),horse_skill_point,cheque FROM player%s WHERE id=%d",
GetTablePostfix(), packet->player_id);
I'm saying this because you might using a new layout of the same function or the implementation for offlineshop which i don't have.
The problem with Buying with Cheque still persists....I don't know what else to do.I've removed first tutorial then i took this one from scratch.Still can't buy with Cheque only or Cheque+Yang.
If i buy with Cheque only it tells me Insufficient Yang.
If i buy with Cheque + Yang it will take only Yang.
...........