Specially for Fizik Hatred: /** * Player register a bl as hatred * @param sd : player session * @param pos : hate position [0;2] * @param bl : target bl * @return false:failed, true:success */ bool pc_set_hate_mob(struct map_session_data *sd, int pos, struct block_list *bl) { int class_; if (!sd || !bl || pos < 0 || pos > 2) return false; sd->hate_mob[pos] = -1; class_ = status_get_class(bl); if (!pcdb_checkid(class_)) { unsigned int max_hp = status_get_max_hp(bl); if ((pos == 1 && max_hp < 6000) || (pos == 2 && max_hp < 20000)) return false; if (pos != status_get_size(bl)) return false; //Wrong size } sd->hate_mob[pos] = class_; pc_setglobalreg(sd,sg_info[pos].hate_var,class_+1); clif_hate_info(sd, pos, class_, 1); return true; } Feeling: case SG_FEEL: //AuronX reported you CAN memorize the same map as all three. [Skotlex] if (sd) { clif_feel_req(sd->fd,sd, skill_lv); } break; Табуляцию надеюсь поставить сам сможешь. А вообще, прежде чем что-то бездумно менять, стоит проверить исходный код. Можно было заметить что pc_set_hate_mob у нас boolean а не int. А если уж все заменил и не знаешь что было в исходном коде, читай что тебе пишет компилятор. Вроде черным по белому, на русском языке.