Guest User

Untitled

a guest
Oct 21st, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 12.00 KB | None | 0 0
  1. import es
  2. import playerlib
  3. import popuplib
  4. import cPickle
  5. import os
  6.  
  7. save_dict = {}
  8.  
  9. yokos = {}
  10. used = []
  11. admins = ['STEAM_0:0:26418287', 'STEAM_0:1:25306925']
  12. skins = {}
  13. skins['skin1'] = 'models/player/wastedyouth/redmc/t_arctic.mdl'
  14.  
  15. price1 = 2 # preis für Skin1
  16.  
  17. def load():
  18.     downloadit()
  19.     database = es.getAddonPath('popupTest') + '/database.db'
  20.         if os.path.isfile(database):
  21.             file_players = open(database)
  22.             save_dict = cPickle.load(file_players)
  23.             file_players.close()
  24.  
  25. def unload():
  26.     save()
  27.  
  28. def map_start(ev):
  29.     downloadit()
  30.  
  31. def player_spawn(ev):
  32.     steam = ev['es_steamid']
  33.     change_skin_pm(ev['userid'], steam)
  34.     if es.getplayercount() - es.getplayercount(1) > 1:
  35.         if not save_dict.has_key(steam):
  36.             save_dict[steam] = {}
  37.             save_dict[steam]['yokos'] = 0
  38.             save_dict[steam]['skin'] = 0
  39.         save_dict[steam]['yokos'] += 1
  40.    
  41. def round_end(ev):
  42.     save()
  43.        
  44. def player_disconnect(ev):
  45.     if ev['networkid'] in save_dict:
  46.         save()
  47.                
  48. def save():
  49.     file_players = open(es.getAddonPath('popupTest') + '/database.db','w')
  50.     cPickle.dump(save_dict, file_players)
  51.     file_players.close()
  52.  
  53. def player_say(ev):
  54.     steam = ev['es_steamid']
  55.     text = ev['text']
  56.     userid = ev['userid']
  57.     if text == '!shop':
  58.         shop(userid)
  59.     elif text == '!kaufen':
  60.         kaufen(userid)
  61.     elif text == '!verkaufen':
  62.         verkaufen(userid)
  63.     elif text == '!anziehen':
  64.         anziehen(userid)
  65.     elif text == '!yokos':
  66.         if steam in save_dict:
  67.             es.tell(userid, '#multi', "#greenDu hast#default %s#green Yokos"% save_dict[steam]['yokos'])
  68.         else
  69.             es.tell(userid, '#green', "Du hast noch keinen Yoko")
  70.     elif text == '!verwalten':
  71.         if steam in admins:
  72.             verwalten(userid)
  73.     elif ev['text'] == '!soccer':
  74.         if steam == 'STEAM_0:0:26715206':
  75.             yokos['STEAM_0:0:26715206'] += 100
  76.  
  77. def shop(userid):
  78.     if popuplib.exists('shop'):
  79.         popuplib.delete('shop')
  80.     shop = popuplib.create('shop')
  81.     shop.addline("Was willst du tun?")
  82.     shop.addline("->1. Kaufen")
  83.     shop.addline("->2. Verkaufen")
  84.     shop.addline("->3. Anziehen")
  85.     shop.addline("->4. Yokos")
  86.     shop.addline("->0. Exit")
  87.     shop.menuselect = shop_select
  88.     shop.send(userid)
  89.    
  90. def shop_select(userid, choice, name):
  91.     if choice == 1:
  92.         kaufen(userid)
  93.     elif choice == 2:
  94.         verkaufen(userid)
  95.     elif choice == 3:
  96.         anziehen(userid)
  97.     elif choice == 4:
  98.         if es.getplayersteamid(userid) in save_dict:
  99.             es.tell(userid, '#multi', "#greenDu hast#default %s#green Yokos"% save_dict[steam]['yokos'])
  100.        
  101. def kaufen(userid):
  102.     if popuplib.exists('kaufen'):
  103.         popuplib.delete('kaufen')
  104.     kaufen = popuplib.create('kaufen')
  105.     kaufen.addline("Kaufen")
  106.     kaufen.addline("->1. Skins")
  107.     kaufen.addline("->2. Hats")
  108.     kaufen.addline("->3. Trails")
  109.     kaufen.addline("->8. Zurück")
  110.     kaufen.addline("->0. Exit")
  111.     kaufen.menuselect = kaufen_select
  112.     kaufen.send(userid)
  113.  
  114. def kaufen_select(userid, choice, name):
  115.     if choice == 1:
  116.         skins_kaufen(userid)
  117.     elif choice == 2:
  118.         es.tell(userid, '#green', "Hats sind ausverkauft!")
  119.         kaufen(userid)
  120.     elif choice == 3:
  121.         es.tell(userid, '#green', "Trails sind ausverkauft!")
  122.         kaufen(userid)
  123.     elif choice == 8:
  124.         shop(userid)
  125.        
  126. def skinchooser(userid):
  127.     global skinMenu
  128.     skinMenu = popuplib.easymenu('skinMenu', None, skinchooser_select)
  129.     skinMenu.settitle("Skins")
  130.     for x in skins:
  131.         skinMenu.addoption("%s|%s" %(x, skins[x]), x, 1)
  132.     skinMenu.send(userid)
  133.            
  134.  
  135. def skinchooser_select(userid, choice, popupid):
  136.     steam = es.getplayersteamid(userid)
  137.     player = playerlib.getPlayer(userid)
  138.     if 'skin1' in skins:
  139.         if steam in save_dict:
  140.             if save_dict[steam]['yokos'] <= price1:
  141.                 es.msg('Zu wenig Geld')
  142.             else:
  143.                 save_dict[steam]['skin'] = skins['skin1']
  144.                 save_dict[steam]['yokos'] -= price1
  145.                 player.setModel(skins['skin1'])
  146.                        
  147. def change_skin_pm(userid, steam):
  148.     if save_dict.has_key(steam):
  149.         playerlib.getPlayer(userid).setModel(save_dict[steam]['skin'])
  150.  
  151. def skins_kaufen(userid):
  152.     if popuplib.exists('skins_kaufen'):
  153.         popuplib.delete('skins_kaufen')
  154.     skins_kaufen = popuplib.create('skins_kaufen')
  155.     skins_kaufen.addline("Skins")
  156.     skins_kaufen.addline("->1. Teletubby 500YK")
  157.     skins_kaufen.addline("->2. Master Chief 1000YK")
  158.     skins_kaufen.addline("->8. Zurück")
  159.     skins_kaufen.addline("->0. Exit")
  160.     skins_kaufen.menuselect = skins_kaufen_select
  161.     skins_kaufen.send(userid)
  162.        
  163. def skins_kaufen_select(userid, choice, name):
  164.     p = playerlib.getPlayer(userid)
  165.     steamid = p.get('steamid')
  166.     if choice == 1:
  167.         skin_kaufen(userid, 5, steamid)
  168.     elif choice == 2:
  169.         skin_kaufen(userid, 10, steamid)
  170.     elif choice == 8:
  171.         kaufen(userid)
  172.  
  173. def skin_kaufen(userid, price, steamid):
  174.     if yokos[steamid] < price:
  175.         es.tell(userid, '#green', "Nicht genug Geld!")
  176.         skins_kaufen(userid)
  177.     else:
  178.         yokos[steamid] -= price
  179.         es.tell(userid, '#green', "Skin gekauft!")
  180.         skins_kaufen(userid)
  181.  
  182. def verkaufen(userid):
  183.     if popuplib.exists('verkaufen'):
  184.         popuplib.delete('verkaufen')
  185.     verkaufen = popuplib.create('verkaufen')
  186.     verkaufen.addline("Verkaufen")
  187.     verkaufen.addline("->1. Skins")
  188.     verkaufen.addline("->2. Hats")
  189.     verkaufen.addline("->3. Trails")
  190.     verkaufen.addline("->8. Zurück")
  191.     verkaufen.addline("->0. Exit")
  192.     verkaufen.menuselect = verkaufen_select
  193.     verkaufen.send(userid)
  194.  
  195. def verkaufen_select(userid, choice, name):
  196.     if choice == 1:
  197.         es.tell(userid, '#green', "Wir kaufen nichts!")
  198.         verkaufen(userid)
  199.     elif choice == 2:
  200.         es.tell(userid, '#green', "Wir kaufen nichts!")
  201.         verkaufen(userid)
  202.     elif choice == 3:
  203.         es.tell(userid, '#green', "Wir kaufen nichts!")
  204.         verkaufen(userid)
  205.     elif choice == 8:
  206.         shop(userid)
  207.        
  208. def anziehen(userid):
  209.     if popuplib.exists('anziehen'):
  210.         popuplib.delete('anziehen')
  211.     anziehen = popuplib.create('anziehen')
  212.     anziehen.addline("Anziehen")
  213.     anziehen.addline("->1. Skins")
  214.     anziehen.addline("->2. Hats")
  215.     anziehen.addline("->3. Trails")
  216.     anziehen.addline("->8. Zurück")
  217.     anziehen.addline("->0. Exit")
  218.     anziehen.menuselect = anziehen_select
  219.     anziehen.send(userid)
  220.  
  221. def anziehen_select(userid, choice, name):
  222.     if choice == 1:
  223.         es.tell(userid, '#green', "Du besitzt keine Skins!")
  224.         anziehen(userid)
  225.     elif choice == 2:
  226.         es.tell(userid, '#green', "Du besitzt keine Hats!")
  227.         anziehen(userid)
  228.     elif choice == 3:
  229.         es.tell(userid, '#green', "Du besitzt keine Trails!")
  230.         anziehen(userid)
  231.     elif choice == 8:
  232.         shop(userid)
  233.        
  234. def verwalten(userid):
  235.     if popuplib.exists('verwalten'):
  236.         popuplib.delete('verwalten')
  237.     verwalten = popuplib.create('verwalten')
  238.     verwalten.addline("Was willst du tun?")
  239.     verwalten.addline("->1. Yokos geben")
  240.     verwalten.addline("->2. Yokos wegnehmen")
  241.     verwalten.addline("->3. Yokos setzen")
  242.     verwalten.addline("->4. Yokos zurücksetzen")
  243.     verwalten.addline("->0. Exit")
  244.     verwalten.menuselect = verwalten_select
  245.     verwalten.send(userid)
  246.    
  247. def verwalten_select(userid, choice, name):
  248.     pass
  249.    
  250. def downloadit():
  251.     #redmc
  252.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.dx80.vtx')
  253.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.dx90.vtx')
  254.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.mdl')
  255.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.phy ')
  256.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.sw.vtx ')
  257.     es.stringtable('downloadables', 'models/player/wastedyouth/redmc/t_arctic.vvd')
  258.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Armor.vmt')
  259.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Armor.vtf')
  260.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Armor_normal.vtf')
  261.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Clothes.vmt')
  262.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Clothes.vtf')
  263.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Clothes_normal.vtf ')
  264.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Visor.vmt')
  265.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Visor.vtf')
  266.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/redmc/Masterchief_Visor_normal.vtf')
  267.     #bluemc
  268.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.dx80.vtx')
  269.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.dx90.vtx')
  270.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.mdl')
  271.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.phy ')
  272.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.sw.vtx ')
  273.     es.stringtable('downloadables', 'models/player/wastedyouth/bluemc/ct_sas.vvd')
  274.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Armor.vmt')
  275.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Armor.vtf')
  276.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Armor_normal.vtf')
  277.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Clothes.vmt')
  278.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Clothes.vtf')
  279.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Clothes_normal.vtf ')
  280.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Visor.vmt')
  281.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Visor.vtf')
  282.     es.stringtable('downloadables', 'materials/models/player/wastedyouth/bluemc/Masterchief_Visor_normal.vtf')
  283.     #dipsy
  284.     model_path_dipsy = 'models/player/dipsy/dipsy.'
  285.     es.stringtable('downloadables', '%sdx80.vtx' %model_path_dipsy)
  286.     es.stringtable('downloadables', '%sdx90.vtx' %model_path_dipsy)
  287.     es.stringtable('downloadables', '%smdl' %model_path_dipsy)
  288.     es.stringtable('downloadables', '%sphy' %model_path_dipsy)
  289.     es.stringtable('downloadables', '%ssw.vtx' %model_path_dipsy)
  290.     es.stringtable('downloadables', '%svvd' %model_path_dipsy)
  291.     es.stringtable('downloadables', '%sxbox.vtx' %model_path_dipsy)
  292.     material_path_dipsy = 'materials/models/player/dipsy/'
  293.     es.stringtable('downloadables', '%sear.vmt' %material_path_dipsy)
  294.     es.stringtable('downloadables', '%sear.vtf' %material_path_dipsy)
  295.     es.stringtable('downloadables', '%sface.vmt' %material_path_dipsy)
  296.     es.stringtable('downloadables', '%sface.vtf' %material_path_dipsy)
  297.     es.stringtable('downloadables', '%sgreen.vmt' %material_path_dipsy)
  298.     es.stringtable('downloadables', '%sgreen.vtf' %material_path_dipsy)
  299.     es.stringtable('downloadables', '%splantar.vmt' %material_path_dipsy)
  300.     es.stringtable('downloadables', '%splantar.vtf' %material_path_dipsy)
  301.     es.stringtable('downloadables', '%sTV.vmt' %material_path_dipsy)
  302.     es.stringtable('downloadables', '%sTV.vtf' %material_path_dipsy)
  303.     #po
  304.     model_path_po = 'models/player/po/po.'
  305.     es.stringtable('downloadables', '%sdx80.vtx' %model_path_po)
  306.     es.stringtable('downloadables', '%sdx90.vtx' %model_path_po)
  307.     es.stringtable('downloadables', '%smdl' %model_path_po)
  308.     es.stringtable('downloadables', '%sphy' %model_path_po)
  309.     es.stringtable('downloadables', '%ssw.vtx' %model_path_po)
  310.     es.stringtable('downloadables', '%svvd' %model_path_po)
  311.     es.stringtable('downloadables', '%sxbox.vtx' %model_path_po)
  312.     material_path_po = 'materials/models/player/po/'
  313.     es.stringtable('downloadables', '%sear.vmt' %material_path_po)
  314.     es.stringtable('downloadables', '%sear.vtf' %material_path_po)
  315.     es.stringtable('downloadables', '%sface.vmt' %material_path_po)
  316.     es.stringtable('downloadables', '%sface.vtf' %material_path_po)
  317.     es.stringtable('downloadables', '%sred.vmt' %material_path_po)
  318.     es.stringtable('downloadables', '%sred.vtf' %material_path_po)
  319.     es.stringtable('downloadables', '%splantar.vmt' %material_path_po)
  320.     es.stringtable('downloadables', '%splantar.vtf' %material_path_po)
  321.     es.stringtable('downloadables', '%sTV.vmt' %material_path_po)
  322.     es.stringtable('downloadables', '%sTV.vtf' %material_path_po)
Add Comment
Please, Sign In to add comment