Difference between revisions of "Item drops array"
Jump to navigation
Jump to search
imported>Jasonharper m (return type) |
imported>Slyz (added the different values for 'type') |
||
Line 30: | Line 30: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | </p><p> | ||
+ | The 'type' field has these currently possible values: | ||
+ | * "" - normal item drop, base drop rate in the 'rate' field. | ||
+ | * "0" - no drop rate information available, 'rate' will be zero. | ||
+ | * "n" - not pickpocketable, but otherwise drops according to 'rate'. | ||
+ | * "c" - conditional drop. | ||
+ | * "p" - pickpocket-only. Currently 'rate' will always be zero. | ||
+ | * "b" - bounty item, 'rate' is meaningless. | ||
</p><p> | </p><p> | ||
Since this is the first function to return a record, it cannot be stored to a variable, and thus the only way to access the data is by iterating over the elements in the array.| | Since this is the first function to return a record, it cannot be stored to a variable, and thus the only way to access the data is by iterating over the elements in the array.| | ||
Line 47: | Line 55: | ||
see_also={{SeeAlso|meat_drop|item_drops}}| | see_also={{SeeAlso|meat_drop|item_drops}}| | ||
− | special=The zero-parameter form returns the last monster encountered (the current one, if used in combat). | + | special=The zero-parameter form returns the last monster encountered (the current one, if used in combat).| |
+ | more_info=see [http://kolmafia.us/showthread.php?3866 this thread].| | ||
}} | }} |
Revision as of 14:42, 5 April 2010
Function Syntax
record [int] item_drops_array()
record [int] item_drops_array(monster m )
Returns an array of records with three fields:
record {
item drop;
int rate;
string type;
}
The 'type' field has these currently possible values:
- "" - normal item drop, base drop rate in the 'rate' field.
- "0" - no drop rate information available, 'rate' will be zero.
- "n" - not pickpocketable, but otherwise drops according to 'rate'.
- "c" - conditional drop.
- "p" - pickpocket-only. Currently 'rate' will always be zero.
- "b" - bounty item, 'rate' is meaningless.
Since this is the first function to return a record, it cannot be stored to a variable, and thus the only way to access the data is by iterating over the elements in the array.
Code Samples
Prints all information Mafia has regarding the item drops of a certain monster.
void drops(monster mob){
print("Monster: " + mob);
foreach index, rec in item_drops_array(mob)
print("item: "+rec.drop+", drop rate: "+rec.rate+", type: "+rec.type);
}
See Also
More Information
see this thread.
Special
The zero-parameter form returns the last monster encountered (the current one, if used in combat).