add rank filter to mhmoney
This commit is contained in:
@@ -6,6 +6,7 @@ Script to find the most lucrative monster parts to farm for money.
|
|||||||
import codecs
|
import codecs
|
||||||
import urllib
|
import urllib
|
||||||
import os.path
|
import os.path
|
||||||
|
import sys
|
||||||
|
|
||||||
import _pathfix
|
import _pathfix
|
||||||
|
|
||||||
@@ -17,7 +18,7 @@ from mhapi import rewards
|
|||||||
ITEM_TYPES = "Bone Bug Flesh Ore Sac/Fluid".split()
|
ITEM_TYPES = "Bone Bug Flesh Ore Sac/Fluid".split()
|
||||||
|
|
||||||
|
|
||||||
def print_top_items(db):
|
def print_top_items(db, rank="G"):
|
||||||
items = db.get_items(ITEM_TYPES)
|
items = db.get_items(ITEM_TYPES)
|
||||||
ev = dict()
|
ev = dict()
|
||||||
strats = dict()
|
strats = dict()
|
||||||
@@ -33,7 +34,7 @@ def print_top_items(db):
|
|||||||
item.sell = int(item.sell)
|
item.sell = int(item.sell)
|
||||||
|
|
||||||
ir = rewards.ItemRewards(db, item)
|
ir = rewards.ItemRewards(db, item)
|
||||||
strat = ir.get_best_strat()
|
strat = ir.get_best_strat(rank=rank)
|
||||||
if strat is None:
|
if strat is None:
|
||||||
ev[item.id] = 0
|
ev[item.id] = 0
|
||||||
else:
|
else:
|
||||||
@@ -43,15 +44,26 @@ def print_top_items(db):
|
|||||||
def item_value(i):
|
def item_value(i):
|
||||||
return i.sell * ev[i.id] / 100.0
|
return i.sell * ev[i.id] / 100.0
|
||||||
|
|
||||||
|
min_value = 10000
|
||||||
|
if rank == "LR":
|
||||||
|
min_value = 1000
|
||||||
|
if rank == "HR":
|
||||||
|
min_value = 5000
|
||||||
|
|
||||||
items.sort(key=item_value, reverse=True)
|
items.sort(key=item_value, reverse=True)
|
||||||
for item in items:
|
for item in items:
|
||||||
value = item_value(item)
|
value = item_value(item)
|
||||||
if value < 10000:
|
if value < min_value:
|
||||||
break
|
break
|
||||||
print " %-20s % 7.f % 6d (% 5.f)" % \
|
print " %-20s % 7.f % 6d (% 5.f)" % \
|
||||||
(item.name, value, int(item.sell), ev[item.id])
|
(item.name, value, int(item.sell), ev[item.id])
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
|
if len(sys.argv) > 1:
|
||||||
|
rank = sys.argv[1]
|
||||||
|
else:
|
||||||
|
rank = "G"
|
||||||
|
|
||||||
db = MHDB()
|
db = MHDB()
|
||||||
print_top_items(db)
|
print_top_items(db, rank)
|
||||||
|
|||||||
Reference in New Issue
Block a user