Advertisement
Guest User

Untitled

a guest
Jul 11th, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 21.76 KB | None | 0 0
  1. from selenium import webdriver
  2. from selenium.webdriver.common.keys import Keys
  3. from selenium.webdriver.support.ui import WebDriverWait
  4. from selenium.webdriver.support import expected_conditions as EC
  5. from selenium.webdriver.common.by import By
  6. from selenium.webdriver.support.ui import Select
  7. import selenium.webdriver.support.ui as UI
  8. from selenium.common.exceptions import TimeoutException
  9. from contextlib import contextmanager
  10. from timeit import default_timer
  11. from bs4 import BeautifulSoup as BS
  12. import time
  13. import random
  14. import sys
  15. import string
  16. from termcolor import colored
  17.  
  18. @contextmanager
  19. def elapsed_timer():
  20. start = default_timer()
  21. elapser = lambda: default_timer() - start
  22. yield lambda: elapser()
  23. end = default_timer()
  24. elapser = lambda: end-start
  25.  
  26. # Login information
  27. login_name = ""
  28. password_text = ""
  29.  
  30. # prep
  31. current_stamina = 0
  32. percent_stamina = 0
  33.  
  34. current_toxic = 0
  35. percent_toxic = 0
  36.  
  37. error_counter = 0
  38. rave_counter = 0
  39.  
  40. original_stdout = sys.stdout
  41.  
  42. power_dict = {
  43. "Robber": {
  44. "Prospect": 100,
  45. "Newbie": 100,
  46. "Snitch": 100,
  47. "Pickpocket": 100,
  48. "Shoplifter": 10000,
  49. "Crook": 40000,
  50. "Burglar": 75000,
  51. "Larcenist": 150000,
  52. "Mugger": 200000,
  53. "Kingpin": 300000,
  54. "Mobster": 450000,
  55. "Padrino": 600000,
  56. "Godfather": 3000000
  57. },
  58. "Hitman": {
  59. "Prospect": 100,
  60. "Bruiser": 100,
  61. "Bravo": 100,
  62. "Goon": 100,
  63. "Garrotter": 20000,
  64. "Cut-throat": 60000,
  65. "Murderer": 90000,
  66. "Butcher": 160000,
  67. "Desperado": 250000,
  68. "Kingpin": 450000,
  69. "Mobster": 500000,
  70. "Padrino": 900000,
  71. "Godfather": 3000000
  72. },
  73. "Businessman": {
  74. "Prospect": 100,
  75. "Ware-slave": 100,
  76. "Swindler": 100,
  77. "Employer": 100,
  78. "Entrepreneur": 10000,
  79. "Banker": 40000,
  80. "Manager": 75000,
  81. "Director": 150000,
  82. "Top executive": 200000,
  83. "Kingpin": 300000,
  84. "Mobster": 450000,
  85. "Padrino": 600000,
  86. "Godfather": 3000000
  87. },
  88. "Pimp": {
  89. "Prospect": 100,
  90. "Popcorn": 100,
  91. "Gigolo": 100,
  92. "Bawd": 100,
  93. "Pet Owner": 10000,
  94. "Player": 40000,
  95. "Procurer": 75000,
  96. "Pander": 150000,
  97. "Bitch Ruler": 200000,
  98. "Kingpin": 300000,
  99. "Mobster": 450000,
  100. "Padrino": 600000,
  101. "Godfather": 3000000
  102. },
  103. "Broker": {
  104. "Prospect": 100,
  105. "Hangaround": 100,
  106. "Criminal": 100,
  107. "Thug": 100,
  108. "Mafioso": 10000,
  109. "Capo": 40000,
  110. "Consigliere": 75000,
  111. "Boss": 150000,
  112. "Don": 200000,
  113. "Kingpin": 300000,
  114. "Mobster": 450000,
  115. "Padrino": 600000,
  116. "Godfather": 3000000
  117. },
  118. "Dealer": {
  119. "Prospect": 100,
  120. "Hangaround": 100,
  121. "Criminal": 100,
  122. "Thug": 100,
  123. "Mafioso": 10000,
  124. "Capo": 40000,
  125. "Consigliere": 75000,
  126. "Boss": 150000,
  127. "Don": 200000,
  128. "Kingpin": 300000,
  129. "Mobster": 450000,
  130. "Padrino": 600000,
  131. "Godfather": 3000000
  132. }
  133.  
  134. }
  135.  
  136. ignore_list = [ "Godfather", "Padrino", "Mobster", "Kingpin", "Don", "Top executive", "Bitch Ruler", "Mugger", "Cut-throat", "Murderer", "Butcher", "Desperado"]
  137. name_ignore = [ "LanceHenriksen", "fraggerek", "Copat6", "TrackeRxEwiL", "copELIO", "FrancisDolarHyde", "KOBRAAA", "Xandan", "V3NoM", "derTigerx", "Houdinni", "onderland", "medepapai", "uniBOTcik", "BlindBig", "NtV", "zAXEN", "Szewoskum35", "ElMachico", "elCiapoO", "Zumbination", "Kllaudia", "gguizzoo", "UsamaBin", "Irz", "TcTaBuTcU", "Klaudia", "Helderscp", "Playkiller", "oFamosoCratera", "BozoNr1", "xxGregaaxx", "emcK"]
  138.  
  139. # patched cdc chromedriver
  140. driver = webdriver.Chrome("chromedriver")
  141. executor_url = driver.command_executor._url
  142. session_id = driver.session_id
  143.  
  144. def attach_to_session(executor_url, session_id):
  145. original_execute = WebDriver.execute
  146. def new_command_execute(self, command, params=None):
  147. if command == "newSession":
  148. # Mock the response
  149. return {'success': 0, 'value': None, 'sessionId': session_id}
  150. else:
  151. return original_execute(self, command, params)
  152. # Patch the function before creating the driver object
  153. WebDriver.execute = new_command_execute
  154. driver = webdriver.Remote(command_executor=executor_url, desired_capabilities={})
  155. driver.session_id = session_id
  156. # Replace the patched function with original function
  157. WebDriver.execute = original_execute
  158. return driver
  159.  
  160. # Open site + login
  161. def login():
  162. global driver, login_name, password_text
  163. driver.get("https://www.thecrims.com/")
  164.  
  165.  
  166. # write username to form
  167. username_input = WebDriverWait(driver, 50).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="loginform"]/input[1]')))
  168. if username_input:
  169. try:
  170. username_input = driver.find_element_by_xpath('//*[@id="loginform"]/input[1]')
  171. username_input.send_keys(f'{login_name}')
  172. except Exception as e:
  173. print(e)
  174.  
  175. # write password to form
  176. password_input = WebDriverWait(driver, 50).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="loginform"]/input[2]')))
  177. if password_input:
  178. try:
  179. password_input = driver.find_element_by_xpath('//*[@id="loginform"]/input[2]')
  180. password_input.send_keys(f'{password_text}')
  181. except Exception as e:
  182. print(e)
  183.  
  184. try:
  185. login_button = driver.find_element_by_xpath('//*[@id="loginform"]/button')
  186. login_button.click()
  187. except Exception as e: print(e)
  188.  
  189. # Get stamina
  190. def getStamina():
  191. global current_stamina, percent_stamina
  192. stamina_bar = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '//*[@id="nightclub-singleassault-attack-18"]/div')))
  193. if stamina_bar:
  194. current_stamina = driver.find_element_by_xpath('//*[@id="nightclub-singleassault-attack-18"]/div').value_of_css_property("width")
  195. percent_stamina = round(100*float(current_stamina[:-2])/128)
  196.  
  197. # Get addiction
  198. def getAddiction():
  199. global current_toxic, percent_toxic
  200. toxic_bar = WebDriverWait(driver, 5).until(EC.presence_of_element_located((By.XPATH, '//*[@id="nightclub-singleassault-attack-19"]/div')))
  201. if toxic_bar:
  202. current_toxic = driver.find_element_by_xpath('//*[@id="nightclub-singleassault-attack-19"]/div').value_of_css_property("width")
  203. percent_toxic = round(100*float(current_toxic[:-2])/128)
  204.  
  205. def printStamina():
  206. global current_stamina, percent_stamina
  207. getStamina()
  208. print("[INFO] stamina - " + str(percent_stamina))
  209.  
  210. def printToxic():
  211. global current_toxic, percent_toxic
  212. getAddiction()
  213. print("[INFO] toxic - " + str(percent_toxic))
  214.  
  215. def goRobMenu():
  216. pass
  217.  
  218. def selectRob():
  219. pass
  220.  
  221. # Rob single
  222. def robSingle():
  223. global percent_stamina, percent_toxic
  224. global driver
  225. getStamina()
  226. getAddiction()
  227.  
  228. if int(percent_toxic) >= 2:
  229. detox()
  230. # detox
  231.  
  232. if int(percent_stamina) < 100:
  233. refreshStamina()
  234.  
  235. # //*[@id="menu-robbery"]
  236.  
  237. robbery_button = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="menu-robbery"]')))
  238. if robbery_button:
  239. robbery_button.click()
  240. robbery_button = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="menu-robbery"]')))
  241. if robbery_button:
  242. robbery_button.click()
  243.  
  244. select = WebDriverWait(driver, 5).until(EC.presence_of_all_elements_located((By.XPATH, "//*[@id='singlerobbery-select-robbery']")))
  245. select = WebDriverWait(driver, 20).until(EC.presence_of_all_elements_located((By.XPATH, "//*[@id='singlerobbery-select-robbery']/option[@value='8']")))
  246. if select:
  247. # selector = driver.find_element_by_xpath('//*[@id="singlerobbery-select-robbery"]')
  248. # all_options = selector.find_elements_by_tag_name("option")
  249. # for option in all_options:
  250. # if "SP: 100%" in option.text:
  251. # print("%s -> %s" % (option.get_attribute("value"), option.text.strip()), end="\n")
  252. selector = Select(driver.find_element_by_xpath('//*[@id="singlerobbery-select-robbery"]'))
  253. #selector.select_by_value('1')
  254. selector.select_by_value('48')
  255.  
  256. #//*[@id="full"]
  257. checkbox_button = driver.find_element_by_xpath('//*[@id="full"]')
  258. #print(checkbox_button.is_selected())
  259. if checkbox_button.is_selected() == False:
  260. checkbox_button.click()
  261.  
  262. # //*[@id="singlerobbery-rob"]
  263. # let's rob
  264. rob_button = driver.find_element_by_xpath('//*[@id="singlerobbery-rob"]')
  265. if rob_button:
  266. rob_button.click()
  267. time.sleep(1)
  268.  
  269. # detox
  270. def detox():
  271. global percent_toxic
  272. global driver
  273. # //*[@id="menu-hospital"]
  274. hospital_button = driver.find_element_by_xpath('//*[@id="menu-hospital"]')
  275. if hospital_button:
  276. hospital_button.click()
  277. # metdaone
  278. # //*[@id="content_middle"]/div/div[3]/table[1]/tbody/tr[5]/td[4]/input
  279. # //*[@id="content_middle"]/div/div[3]/table[1]/tbody/tr[5]/td[4]/input
  280. metadone_input = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="content_middle"]/div/div[3]/table[1]/tbody/tr[5]/td[4]/input')))
  281. if metadone_input:
  282. try:
  283. metadone_input = driver.find_element_by_xpath('//*[@id="content_middle"]/div/div[3]/table[1]/tbody/tr[5]/td[4]/input')
  284. metadone_input.send_keys(f'{percent_toxic}')
  285. except Exception as e:
  286. print(e)
  287.  
  288. try:
  289. metadone_button = driver.find_element_by_xpath('//*[@id="content_middle"]/div/div[3]/table[1]/tbody/tr[5]/td[4]/button')
  290. metadone_button.click()
  291. except Exception as e: print(e)
  292.  
  293. # Go to rave - get full stamina - get out
  294. def refreshStamina():
  295. global driver
  296. global percent_stamina, percent_toxic
  297. # go to rave -> //*[@id="menu-nightlife"]
  298. rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="menu-nightlife"]')))
  299. if rave_button:
  300. rave_button = driver.find_element_by_xpath('//*[@id="menu-nightlife"]')
  301. if rave_button:
  302. rave_button.click()
  303.  
  304. # rave 1 //*[@id="content_middle"]/div/div[3]/div[3]/ul[4]/li[1]/div/div[2]/div[2]/button
  305. # //*[@id="content_middle"]/div/div[3]/div[3]/ul[2]/li[1]/div/div[2]/div[2]/button
  306. #
  307. # rave 2 //*[@id="content_middle"]/div/div[3]/div[3]/ul[4]/li[2]/div/div[2]/div[2]/button
  308.  
  309. # //*[@id="content_middle"]/div/div[3]/div[2]/table/tbody/tr[2]/td[5]/div/button
  310. #
  311. rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="content_middle"]/div/div[3]/div[2]/table/tbody/tr[1]/td[5]/div/button')))
  312. if rave_button:
  313. rave_button = driver.find_element_by_xpath('//*[@id="content_middle"]/div/div[3]/div[2]/table/tbody/tr[1]/td[5]/div/button')
  314. # //*[@id="content_middle"]/div/div[3]/div[2]/table/tbody/tr[1]/td[5]/div/button
  315. if rave_button:
  316. rave_button.click()
  317.  
  318. # buy hooker stamina
  319. # //*[@id="content_middle"]/div/div[3]/table[2]/tbody/tr/td[4]/button
  320. # //*[@id="nightclub-drug-buy-button-2957"]
  321. rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[starts-with(@id, "nightclub-drug-buy-button")]')))
  322. if rave_button:
  323. rave_button = driver.find_element_by_xpath('//*[starts-with(@id, "nightclub-drug-buy-button")]')
  324. if rave_button:
  325. rave_button.click()
  326.  
  327.  
  328. # leave rave ->
  329. # //*[@id="exit-button-l5Jol5-ZaWnLl2-Wl3CYm5yTapdplWeVmGZlm2eanJmdmGaXnQ"]
  330.  
  331. # //*[@id="exit-button-l5Jol5-ZaWnLl2-Wl3CYm5yTapdplWeVmGZlm2eanJmdmGaXnQ"]
  332. # //*[@id="exit-button-aWVtmm1mmJ7HaWdox5pox5-Ua2JmkmyXbGVlaWWXaJJva2uaaw"]
  333. # //*[@id="exit-button-aWVtmm1mmJ7HaWdox5pox5-Ua2JmkmyXbGVlaWWXaJJva2uaaw"]
  334.  
  335. # //*[@id="exit-button-aGGalnGcapyZYmljyXCbmHFhbWZpmmucZWaWcWacnZNuZ5iWbw"]
  336.  
  337. #rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="exit-button-l5Jol5-ZaWnLl2-Wl3CYm5yTapdplWeVmGZlm2eanJmdmGaXnQ"]')))
  338. rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[starts-with(@id, "exit-button")]')))
  339. if rave_button:
  340. #rave_button = driver.find_element_by_xpath('//*[@id="exit-button-l5Jol5-ZaWnLl2-Wl3CYm5yTapdplWeVmGZlm2eanJmdmGaXnQ"]')
  341. rave_button = driver.find_element_by_xpath('//*[starts-with(@id, "exit-button")]')
  342. # //*[starts-with(@id, "exit-button")]
  343. if rave_button:
  344. rave_button.click()
  345. time.sleep(2)
  346.  
  347. # //*[@id="exit-button-aWVtnG1omJyWa2FonJZjycucaWiWlnGaapNrYWZpk2draG2WZA"]
  348. # //*[@id="exit-button-aWVtnG1omJyWa2FonJZjycucaWiWlnGaapNrYWZpk2draG2WZA"]
  349. # //*[@id="exit-button-aWVtnG1omJyWa2FonJZjycucaWiWlnGaapNrYWZpk2draG2WZA"]
  350.  
  351.  
  352. # buy booze - //*[@id="nightclub-drug-buy-button-2415"]
  353. # //*[@id="nightclub-drug-buy-button-2415"]
  354.  
  355. def prepareHunt():
  356. # hunt info
  357.  
  358. # get list of top killers
  359.  
  360. # make list of dangerous classes
  361.  
  362. # set target respect
  363.  
  364. # save them globally
  365. pass
  366.  
  367. def randomString(stringLength=8):
  368. letters = string.ascii_lowercase
  369. return ''.join(random.choice(letters) for i in range(stringLength))
  370.  
  371. def scanVisitors():
  372. global driver, original_stdout
  373. global ignore_list
  374. # scan for players
  375.  
  376. try:
  377. visitor_list = WebDriverWait(driver, 2).until(EC.visibility_of_element_located((By.XPATH, '/html/body/div[2]/div[4]/div/table/tbody/tr/td[1]/div[2]/table/tbody/tr/td/div[2]/div/div[3]/div[1]/h3')))
  378. if visitor_list:
  379. #print("-> found visitors.")
  380. try:
  381. visitor_div = driver.find_element_by_xpath('/html/body/div[2]/div[4]/div/table/tbody/tr/td[1]/div[2]/table/tbody/tr/td/div[2]/div/div[3]/div[1]')
  382. visitors = visitor_div.find_elements_by_xpath('.//*[starts-with(@class, "visitor-")]')
  383. for visitor in [visitors[0]]:
  384. #log_name = 'logs/visitor_{}'.format(randomString(8))
  385. #print(log_name)
  386.  
  387. #with open(log_name + "_details.html", 'w') as f:
  388. #f.write(visitor.get_attribute('innerHTML'))
  389. #print(visitor.get_attribute('innerHTML'))
  390.  
  391. # find stats
  392. # name
  393. # respect
  394. # profession
  395. # level
  396. soup = BS(visitor.get_attribute('innerHTML'), 'html.parser')
  397. visitor_name = ""
  398. for div in soup.find_all('div', attrs={'class': 'user_list_username'}):
  399. visitor_name = div.text.strip()
  400.  
  401. first_children = [i.text for i in soup.select('.visitor_information div:last-child')]
  402. #print(first_children)
  403. #print(first_children[-1])
  404. visitor_respect = first_children[-1].strip()
  405. visitor_respect = visitor_respect.replace("Respect:", "").strip()
  406. visitor_respect = int(visitor_respect)
  407. # nth-last-child(2)
  408. first_children = [i.text for i in soup.select('.visitor_information div:nth-last-child(2)')]
  409. visitor_prof = first_children[0].strip()
  410.  
  411. first_children = [i.text for i in soup.select('.visitor_information div:nth-last-child(3)')]
  412. visitor_rank = first_children[0].strip()
  413.  
  414. rank_text = ""
  415. estimate_power = ""
  416.  
  417. print("{} : {} - {} - {} ".format(colored(visitor_name,"blue"), colored(f'{visitor_respect:,}', "green"), colored(visitor_prof, "yellow"), colored(visitor_rank, "magenta")))
  418. # find boom box
  419. # click choose
  420. # nightclub-singleassault-select-open
  421. try:
  422. select_open = visitor.find_element_by_xpath('.//*[starts-with(@id, "nightclub-singleassault-select-open")]')
  423. if select_open:
  424. select_open.click()
  425.  
  426.  
  427. # click single
  428. # nightclub-select-assault-type-single
  429. type_single = visitor.find_element_by_xpath('.//*[starts-with(@id, "nightclub-select-assault-type-single")]')
  430. if type_single:
  431. type_single.click()
  432.  
  433. attack_him = False
  434. if visitor_rank != "Hitman":
  435. if visitor_name not in name_ignore:
  436. if visitor_prof not in ignore_list:
  437. if visitor_respect <=210000:
  438. attack_him = True
  439. else:
  440. if visitor_respect <=110000:
  441. attack_him = True
  442.  
  443. # click kill
  444. # nightclub-attack
  445. type_kill = visitor.find_element_by_xpath('.//*[starts-with(@id, "nightclub-attack")]')
  446. if type_kill:
  447. if attack_him:
  448. type_kill.click()
  449. leaveRave(sleep=1)
  450. print("{} : {} - {} - {} ".format(colored(visitor_name,"red"), colored(f'{visitor_respect:,}', "green"), colored(visitor_prof, "yellow"), colored(visitor_rank, "magenta")))
  451. time.sleep(5)
  452. return
  453. #driver.quit()
  454. #sys.exit(0)
  455. else:
  456. pass
  457. #print("You are safe for now -> {} : {} - {} - {} ".format(colored(visitor_name,"red"), colored(f'{visitor_respect:,}', "green"), colored(visitor_prof, "yellow"), colored(visitor_rank, "magenta")))
  458. leaveRave(sleep=1)
  459. except:
  460. leaveRave(sleep=1)
  461. except:
  462. leaveRave(sleep=2)
  463. except:
  464. pass
  465.  
  466. def scanPrey():
  467. global driver
  468. global percent_stamina, percent_toxic
  469. try:
  470. getStamina()
  471. if int(percent_stamina) < 50:
  472. refreshStamina()
  473. getAddiction()
  474. if int(percent_toxic) >= 5:
  475. detox()
  476. enterRandomRave(sleep=0)
  477. scanVisitors()
  478. leaveRave(sleep=0)
  479. except:
  480. increaseErrorCount()
  481.  
  482. def increaseRaveCount():
  483. global rave_counter
  484. rave_counter += 1
  485. #print("[INFO] - Raves visited : {}".format(rave_counter))
  486.  
  487. def goDrinkBoze():
  488. pass
  489.  
  490. def goRaveMenu(sleep=2):
  491. global driver
  492. if sleep == -1:
  493. sleep = random.randint(2,5)
  494. time.sleep(sleep)
  495. try:
  496. rave_button = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.XPATH, '//*[@id="menu-nightlife"]')))
  497. if rave_button:
  498. rave_button = driver.find_element_by_xpath('//*[@id="menu-nightlife"]')
  499. if rave_button:
  500. rave_button.click()
  501. except:
  502. increaseErrorCount()
  503.  
  504. def leaveRave(sleep=5):
  505. global rave_counter
  506. if sleep == -1:
  507. sleep = random.randint(3,7)
  508. global driver
  509. try:
  510. rave_button = WebDriverWait(driver, 2).until(EC.visibility_of_element_located((By.XPATH, '//*[starts-with(@id, "exit-button")]')))
  511. if rave_button:
  512. rave_button = driver.find_element_by_xpath('//*[starts-with(@id, "exit-button")]')
  513. if rave_button:
  514. rave_button.click()
  515.  
  516. increaseRaveCount()
  517. time.sleep(sleep)
  518. except:
  519. increaseErrorCount()
  520.  
  521. def enterRandomRave(sleep=0):
  522. global driver
  523. if sleep == -1:
  524. sleep = random.randint(2,5)
  525. time.sleep(sleep)
  526. rave_number = random.randint(3, 10)
  527. xpath_rave = '(//button[contains(@class,"btn btn-inverse btn btn-inverse btn-small pull-right")])[{}]'.format(rave_number)
  528. try:
  529. rave_button = WebDriverWait(driver, 4).until(EC.visibility_of_element_located((By.XPATH, xpath_rave)))
  530. if rave_button:
  531. rave_button = driver.find_element_by_xpath(xpath_rave)
  532. if rave_button:
  533. rave_button.click()
  534. except:
  535. increaseErrorCount()
  536.  
  537. def checkErrorCount():
  538. global error_counter, driver
  539. # if error_counter == 50:
  540. # print("[INFO] ABORTED DUE TO ERROR COUNT - {}".format(error_counter))
  541. # leaveRave(sleep=0)
  542. # driver.quit()
  543. # sys.exit(1)
  544.  
  545. def increaseErrorCount():
  546. global error_counter
  547. error_counter += 1
  548. checkErrorCount()
  549.  
  550. def hunt():
  551. # hunt
  552. pass
  553. # go to rave menu
  554.  
  555. # if stam < 50 - first thing when enter rave - drink fast
  556.  
  557. # enter random disco with booze
  558.  
  559. # scan for players
  560.  
  561. # check for danger name or profession - rank
  562. # escape if danger
  563.  
  564.  
  565. # check respect
  566.  
  567. # hit
  568.  
  569. # leave rave
  570.  
  571. # sleep random
  572.  
  573.  
  574.  
  575. if __name__ == "__main__":
  576. login()
  577. #robSingle()
  578. #time.sleep(20)
  579. time.sleep(5)
  580. while True:
  581. goRaveMenu(sleep=2)
  582. scanPrey()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement