Refresh shop: Difference between revisions

From Kolmafia
Jump to navigation Jump to search
imported>Gnocchi masala
Revision 12906 add refresh_shop() function.
 
imported>Eliteofdelete
No edit summary
Line 15: Line 15:
function_description=Forces mafia to re-check your mall store (useful since it's impossible for mafia to internally track this section of "your" inventory).|
function_description=Forces mafia to re-check your mall store (useful since it's impossible for mafia to internally track this section of "your" inventory).|


needscode=yes|
code1={{CodeSample|
title=Code Samples|
description=Following example uses refresh_shop to create an auto stocker for your shop that prevents you from flooding the market.|
code=
<syntaxhighlight>
void shop_stocker (item selling, int amount_in_store, float mallprice_factor) {
  while (item_amount(selling) > 0) {
      int current;
      refresh_shop();
      current = shop_amount(selling);
      if (current < amount_in_store) {
        int amount = amount_in_store - current;
        int price = mall_price(selling);
        price = round(price * mallprice_factor);
        print("Currently have "+current+" "+selling+" in store. Putting "+amount+" more up for "+price+".", "blue");
        put_shop(price, 0, amount, selling);
      }
      else print("Currently have "+current+" "+selling+" in store. Have not sold any recently.", "red");
      print("Waiting....", "purple");
      waitq(300); //wait 5 mins
  }
}
 
shop_stocker ($item[mae west], 5, .99);
</syntaxhighlight>|


cli_equiv=Not Known|
cli_equiv=Not Known|

Revision as of 22:23, 21 January 2015

{{

FunctionPage| name=refresh_shop|

function1=

void refresh_shop()

|

function_description=Forces mafia to re-check your mall store (useful since it's impossible for mafia to internally track this section of "your" inventory).|

code1=

Code Samples

Following example uses refresh_shop to create an auto stocker for your shop that prevents you from flooding the market.

void shop_stocker (item selling, int amount_in_store, float mallprice_factor) {
   while (item_amount(selling) > 0) {
      int current;
      refresh_shop();
      current = shop_amount(selling);
      if (current < amount_in_store) {
         int amount = amount_in_store - current;
         int price = mall_price(selling);
         price = round(price * mallprice_factor);
         print("Currently have "+current+" "+selling+" in store. Putting "+amount+" more up for "+price+".", "blue");
         put_shop(price, 0, amount, selling);
      }
      else print("Currently have "+current+" "+selling+" in store. Have not sold any recently.", "red");
      print("Waiting....", "purple");
      waitq(300); //wait 5 mins
   }
}

shop_stocker ($item[mae west], 5, .99);