Difference between revisions of "Put shop"

From Kolmafia
Jump to navigation Jump to search
imported>Gausie
Line 34: Line 34:
 
<p>Note that attempting to put an item in your store at less than minimum mall price will automatically reset the price to mall minimum.</p>
 
<p>Note that attempting to put an item in your store at less than minimum mall price will automatically reset the price to mall minimum.</p>
 
<p>Note that attempting to put a negative amount of an item in your store will not do anything, but will still return true.</p>
 
<p>Note that attempting to put a negative amount of an item in your store will not do anything, but will still return true.</p>
<p>Note that you cannot specify a quantity of 0 to change prices, but the function will still return true.|
+
<p>Note that you cannot specify a quantity of 0 to change prices, but the function will still return true.
 +
 
 +
<p>Note: Previous versions had a [https://kolmafia.us/threads/put_shop-coerces-item-quantity-from-float-to-int-incorrectly.25865/ bug] where passing a {{t|float}} value as the item quantity would cause it to be interpreted as the integer 0, or (less frequently) the result of interpreting the binary representation of said floating-point number as a 64-bit integer. This issue was exacerbated in JavaScript, because all JavaScript numbers are floating-point numbers. This bug was fixed in [https://kolmafia.us/threads/20632-ash-put_shop-enhancement-to-allow-the-quantity-param-to-take-a-float-and-convert-it-to-an.25869/ r20632].</p>
 +
|
  
 
code1={{CodeSample|
 
code1={{CodeSample|

Revision as of 05:33, 16 February 2021

Function Syntax

boolean put_shop(int price ,int limit ,item it )

boolean put_shop(int price ,int limit ,int qty ,item it )

  • price is the price to set; using 0 will result in the max-price of 999,999,999 if item is not currently in your store
  • limit is the limit per player per day, or no limit if set to 0
  • qty an optional parameter for the quantity of items to put in your shop (defaults to all if not provided)
  • it is the item to put in your mall store.

Places items in your mall store with settings as described above. Returns true if placement is successful and false if placement fails.

Note that attempting to put an item in your store at less than minimum mall price will automatically reset the price to mall minimum.

Note that attempting to put a negative amount of an item in your store will not do anything, but will still return true.

Note that you cannot specify a quantity of 0 to change prices, but the function will still return true.

Note: Previous versions had a bug where passing a Template:T value as the item quantity would cause it to be interpreted as the integer 0, or (less frequently) the result of interpreting the binary representation of said floating-point number as a 64-bit integer. This issue was exacerbated in JavaScript, because all JavaScript numbers are floating-point numbers. This bug was fixed in r20632.

Code Sample

The following example will put all of your broken skulls in your mall store for 500 meat at a limit of 5.

put_shop(500 , 5 , $item[broken skull]);

CLI Equivalent

The CLI command "mallsell" works similarly.

See Also

have_shop() | shop_amount() | shop_limit() | take_shop()