Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import chat, chr, event, game, net, player, time, thread, quest
- USE_YOUNG_HEROES_WEAPON = True
- OPEN_LEVEL_CHESTS = True
- USE_POTIONS_OF_WISDOM = True
- USE_EQUIPMENT = True
- YOUNG_HEROES_QUEST_NAME = "Waffen für Junghelden" # quest name
- WARRIOR_WEAPON = 1 # 0 = sword, 1 = blade
- NINJA_WEAPON = 1 # 0 = sword, 1 = dagger, 2 = bow
- SURA_WEAPON = 0 # 0 = sword
- SHAMAN_WEAPON = 1 # 0 = bell, 1 = fan
- WOLFMAN_WEAPON = 0 # 0 = claw
- YOUNG_HEROES_WEAPON_IDS = [
- [ # warrior
- [21900, 21910, 21920, 21930, 21940, 21950, 21960, 21970], # sword
- [21903, 21913, 21923, 21933, 21943, 21953, 21963, 21973] # blade
- ],
- [ # ninja
- [21900, 21910, 21920, 21930, 21940, 21950, 21960, 21970], # sword
- [21901, 21911, 21921, 21931, 21941, 21951, 21961, 21971], # dagger
- [21902, 21912, 21922, 21932, 21942, 21952, 21962, 21972] # bow
- ],
- [ # sura
- [21900, 21910, 21920, 21930, 21940, 21950, 21960, 21970] # sword
- ],
- [ # shaman
- [21904, 21914, 21924, 21934, 21944, 21954, 21964, 21974], # bell
- [21905, 21915, 21925, 21935, 21945, 21955, 21965, 21975] # fan
- ],
- [ # wolfman
- [21906, 21916, 21926, 21936, 21946, 21956, 21966, 21976] # claw
- ]
- ]
- POTION_OF_WISDOM_IDS = [
- 71153, # one hour
- 71155, # three hours
- 71181, # three hours
- 38058 # three hours
- ]
- SLOTS = player.INVENTORY_PAGE_COUNT * player.INVENTORY_PAGE_SIZE
- RACE = chr.GetRace()
- YOUNG_HEROES_QUEST_ID = 0
- ANTIFLAG = 0
- BODY_DEF = 0
- HEAD_DEF = 0
- SHIELD_DEF = 0
- CHEST_ID = 0
- WEAPON_ID = 0
- LEVEL = 0
- def CheckWeapon():
- global LEVEL, WEAPON_ID, YOUNG_HEROES_QUEST_ID
- if not USE_YOUNG_HEROES_WEAPON:
- return
- for i in xrange(quest.GetQuestCount()):
- if quest.GetQuestData(i)[0].find(YOUNG_HEROES_QUEST_NAME) == -1:
- continue
- YOUNG_HEROES_QUEST_ID = quest.GetQuestIndex(i)
- while 1:
- if YOUNG_HEROES_QUEST_ID != 0:
- game.GameWindow.OpenQuestWindow = 0
- event.QuestButtonClick(YOUNG_HEROES_QUEST_ID)
- event.SelectAnswer(1, 252)
- LEVEL = player.GetStatus(player.LEVEL)
- if RACE == 0 or RACE == 4:
- if YOUNG_HEROES_QUEST_ID != 0:
- event.SelectAnswer(1, WARRIOR_WEAPON)
- WEAPON_ID = YOUNG_HEROES_WEAPON_IDS[0][WARRIOR_WEAPON][int(LEVEL / 10)]
- elif RACE == 1 or RACE == 5:
- if YOUNG_HEROES_QUEST_ID != 0:
- event.SelectAnswer(1, SURA_WEAPON)
- WEAPON_ID = YOUNG_HEROES_WEAPON_IDS[1][NINJA_WEAPON][int(LEVEL / 10)]
- elif RACE == 2 or RACE == 6:
- if YOUNG_HEROES_QUEST_ID != 0:
- event.SelectAnswer(1, SURA_WEAPON)
- WEAPON_ID = YOUNG_HEROES_WEAPON_IDS[2][SURA_WEAPON][int(LEVEL / 10)]
- elif RACE == 3 or RACE == 7:
- if YOUNG_HEROES_QUEST_ID != 0:
- event.SelectAnswer(1, SHAMAN_WEAPON)
- WEAPON_ID = YOUNG_HEROES_WEAPON_IDS[3][SHAMAN_WEAPON][int(LEVEL / 10)]
- elif RACE == 8:
- if YOUNG_HEROES_QUEST_ID != 0:
- event.SelectAnswer(1, WOLFMAN_WEAPON)
- WEAPON_ID = YOUNG_HEROES_WEAPON_IDS[4][WOLFMAN_WEAPON][int(LEVEL / 10)]
- if WEAPON_ID == 0:
- return
- for slot in xrange(SLOTS):
- if player.GetItemIndex(slot) != WEAPON_ID:
- continue
- net.SendItemUsePacket(slot)
- time.sleep(5)
- def CheckChest():
- global CHEST_ID, LEVEL
- if not OPEN_LEVEL_CHESTS:
- return
- while 1:
- LEVEL = player.GetStatus(player.LEVEL)
- if (LEVEL >= 10 and LEVEL < 20):
- CHEST_ID = 50188
- elif (LEVEL >= 20 and LEVEL < 30):
- CHEST_ID = 50189
- elif (LEVEL >= 30 and LEVEL < 40):
- CHEST_ID = 50190
- elif (LEVEL >= 40 and LEVEL < 50):
- CHEST_ID = 50191
- elif (LEVEL >= 50 and LEVEL < 60):
- CHEST_ID = 50192
- elif (LEVEL >= 60 and LEVEL < 70):
- CHEST_ID = 50193
- elif (LEVEL >= 70 and LEVEL < 80):
- CHEST_ID = 50194
- elif (LEVEL >= 80 and LEVEL < 90):
- CHEST_ID = 50195
- elif (LEVEL >= 90):
- CHEST_ID = 50196
- if CHEST_ID == 0:
- return
- for slot in xrange(SLOTS):
- if player.GetItemIndex(slot) != CHEST_ID:
- continue
- net.SendItemUsePacket(slot)
- time.sleep(5)
- def CheckPotions():
- if not USE_POTIONS_OF_WISDOM:
- return
- while 1:
- for potion in POTION_OF_WISDOM_IDS:
- for slot in xrange(SLOTS):
- if player.GetItemIndex(slot) != potion:
- continue
- net.SendItemUsePacket(slot)
- time.sleep(5)
- def CheckEquipment():
- global ANTIFLAG, BODY_DEF, HEAD_DEF, LEVEL, SHIELD_DEF
- if not USE_EQUIPMENT:
- return
- while 1:
- if RACE == 0 or RACE == 4:
- ANTIFLAG = item.ITEM_ANTIFLAG_WARRIOR
- elif RACE == 1 or RACE == 5:
- ANTIFLAG = item.ITEM_ANTIFLAG_NINJA
- elif RACE == 2 or RACE == 6:
- ANTIFLAG = item.ITEM_ANTIFLAG_SURA
- elif RACE == 3 or RACE == 7:
- ANTIFLAG = item.ITEM_ANTIFLAG_SHAMAN
- elif RACE == 8:
- ANTIFLAG = item.ITEM_ANTIFLAG_WOLFMAN
- LEVEL = player.GetStatus(player.LEVEL)
- item.SelectItem(player.GetItemIndex(2, 0))
- BODY_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- item.SelectItem(player.GetItemIndex(2, 1))
- HEAD_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- item.SelectItem(player.GetItemIndex(2, 10))
- SHIELD_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- for slot in xrange(SLOTS):
- item.SelectItem(player.GetItemIndex(slot))
- if item.IsAntiFlag(ANTIFLAG) != 0 or item.GetLimit(0)[1] > LEVEL:
- continue
- if item.GetItemType() == 2 and item.GetItemSubType() == 0:
- if item.GetValue(1) + (item.GetValue(5) * 2) <= BODY_DEF:
- continue
- BODY_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- elif item.GetItemType() == 2 and item.GetItemSubType() == 1:
- if item.GetValue(1) + (item.GetValue(5) * 2) <= HEAD_DEF:
- continue
- HEAD_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- elif item.GetItemType() == 2 and item.GetItemSubType() == 2:
- if item.GetValue(1) + (item.GetValue(5) * 2) <= SHIELD_DEF:
- continue
- SHIELD_DEF = item.GetValue(1) + (item.GetValue(5) * 2)
- else:
- continue
- net.SendItemUsePacket(slot)
- time.sleep(5)
- thread.start_new_thread(CheckWeapon, ())
- thread.start_new_thread(CheckChest, ())
- thread.start_new_thread(CheckPotions, ())
- thread.start_new_thread(CheckEquipment, ())
- chat.AppendChat(7, "LevelUp Script by SoNiice : )")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement