Untitled
unknown
plain_text
2 years ago
2.8 kB
4
Indexable
// you may need to change to <ITEM> and </ITEM> for this client version! void itemdb_linkcreate(char* buf, struct item *item) { int i = 9, k; struct item_data* id; if (item == NULL || !(id = itemdb_search(item->nameid))) { return; } strcat(buf, " <ITEM>00"); //start link i += korea62conversionmin(id->equip, buf + i, 3); // itemtype if (id->equip) buf[i] = '1'; else buf[i] = '0'; i += korea62conversion(item->nameid, buf + i + 1) + 1; if (item->refine) { buf[i] = '%'; i += korea62conversion(item->refine, buf + i + 1) + 1; } //buf[i] = '&'; //i += korea62conversion(id->view_id, buf + i + 1) + 1; for (k = 0; k<4; k++) { if (item->card[k]) { buf[i] = '\''; i += korea62conversion(item->card[k], buf + i + 1) + 1; } else { buf[i] = '\''; buf[i + 1] = '0'; buf[i + 2] = '0'; i += 3; } } for (k = 0; k < MAX_ITEM_RDM_OPT; k++) { if (item->option[k].id) { buf[i] = '*'; i += korea62conversion(item->option[k].id, buf + i + 1) + 1; buf[i] = '+'; i += korea62conversion(item->option[k].param, buf + i + 1) + 1; buf[i] = ','; i += korea62conversion(item->option[k].value, buf + i + 1) + 1; } } strcat(buf, "</ITEM>"); //end link } void itemdb_idlinkcreate(char* buf, int nameid) { struct item item_tmp; int i; item_tmp.nameid = nameid; item_tmp.refine = 0; for (i = 0; i < MAX_SLOTS; i++) item_tmp.card[i] = 0; for (i = 0; i < MAX_ITEM_RDM_OPT; i++) { item_tmp.option[i].id = 0; item_tmp.option[i].param = 0; item_tmp.option[i].value = 0; } itemdb_linkcreate(buf, &item_tmp); } std::string commash(std::string digits){ std::string result; if (digits.length() > 3){ int t = 0; for(int i = digits.length() - 1; i >= 0; i --){ result = digits[i] + result; t++; if(t%3 == 0){ result = ',' + result; } } if(result[0] == ','){ result.erase(0, 1); } } else { result = digits; } return result; }
Editor is loading...