| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- #include <YSI_Coding\y_hooks>
- #define MAX_ITEMS 100
- #define MAX_ITEM_NAME 33
- #define TYPE_WEAPON 0
- #define TYPE_DRUG 1
- #define TYPE_FOOD 2
- static ItemOwnerSQLID[MAX_ITEMS];
- static ItemName[MAX_ITEMS][MAX_ITEM_NAME];
- static ItemType[MAX_ITEMS];
- static ItemSize[MAX_ITEMS];
- static Float:ItemWeight[MAX_ITEMS];
- new Iterator:Item<MAX_ITEMS>;
- hook OnMySQLConnected()
- {
- inline const OnPropertyFound()
- {
- for(new i; i < cache_num_rows(); i++)
- {
- if(Iter_Free(Item) == INVALID_ITERATOR_SLOT)
- {
- printf("The maximum amount of items has been reached. (%d)", Iter_Count(Item));
- break;
- }
- new itemid = INVALID_ITERATOR_SLOT;
- cache_get_value_name_int(i, "id", itemid);
- cache_get_value_name_int(i, "owner_id", ItemOwnerSQLID[itemid]);
- cache_get_value_name(i, "name", ItemName[itemid]);
- cache_get_value_name_int(i, "type", ItemType[itemid]);
- cache_get_value_name_int(i, "size", ItemSize[itemid]);
- cache_get_value_name_float(i, "weight", ItemWeight[itemid]);
- Iter_Add(Item, itemid);
- }
- }
- MySQL_TQueryInline(MySQL_GetHandle(), using inline OnPropertyFound, "SELECT * FROM items");
- }
- stock Inventory_GetItemOwnerSQLID(itemid)
- {
- return ItemOwnerSQLID[itemid];
- }
- stock Inventory_SetItemName(itemid, const name[])
- {
- format(ItemName[itemid], MAX_ITEM_NAME, name);
- new query[112];
- mysql_format(MySQL_GetHandle(), query, sizeof(query), "UPDATE items SET name = '%e' WHERE id = %d", name, itemid);
- mysql_tquery(MySQL_GetHandle(), query);
- }
- stock Inventory_GetItemName(itemid)
- {
- return ItemName[itemid];
- }
- stock Inventory_SetItemType(itemid, type)
- {
- ItemType[itemid] = type;
- new query[84];
- mysql_format(MySQL_GetHandle(), query, sizeof(query), "UPDATE items SET type = %d WHERE id = %d", type, itemid);
- mysql_tquery(MySQL_GetHandle(), query);
- }
- stock Inventory_GetItemType(itemid)
- {
- return ItemType[itemid];
- }
- stock Inventory_SetItemSize(itemid, size)
- {
- ItemSize[itemid] = size;
- new query[84];
- mysql_format(MySQL_GetHandle(), query, sizeof(query), "UPDATE items SET size = %d WHERE id = %d", size, itemid);
- mysql_tquery(MySQL_GetHandle(), query);
- }
- stock Inventory_GetItemSize(itemid)
- {
- return ItemSize[itemid];
- }
- stock Inventory_SetItemWeight(itemid, Float:weight)
- {
- ItemWeight[itemid] = weight;
- new query[84];
- mysql_format(MySQL_GetHandle(), query, sizeof(query), "UPDATE items SET weight = %f WHERE id = %d", weight, itemid);
- mysql_tquery(MySQL_GetHandle(), query);
- }
- stock Float:Inventory_GetItemWeight(itemid)
- {
- return ItemWeight[itemid];
- }
- stock bool:IsValidItem(itemid)
- {
- if(Iter_Contains(Item, itemid))
- {
- return true;
- }
- return false;
- }
|