# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Bonbon's fun classes v_2.2 # # Requires: # # # # Eventscripts 2.0 # # # # add the line es_load bclasses to your autoexec.cfg # # # # Thank you to: # # Mattie who made the Quad mod (for glow) # # SD who made the jump multiplier, pickle thread and # # helped with a WHOLE WHOLE lot of other stuff # # GODJones (who else to point out my mistakes) # # JoeyT2008 and his shenanigans # # # # And the beta testers: # # {F.U.B.A.R} Angel Of Death # # Zellers Security # # { [GSN] } Griff92 # # # # # # If you have any questions e-mail me at: # # drunkenmousehide@hotmail.com # # or use the PMS on the eventscripts formums # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # import es, playerlib, popuplib, gamethread, usermsg, random info = es.AddonInfo() info['name'] = "BClasses" info['version'] = "2.2" info['author'] = "Bonbon AKA: Bonbon367" info['url'] = "http://forums.mattie.info/cs/forums/viewtopic.php?p=182754" info['description'] = "Very fun class mod each with their own abilities - New York Times" player_classes = {} # Create an empty dict for player classes player_specials = {} # Create an empty dict for player powers enabled_classes = ('!zombie', '!ghost', '!homer', '!kitty', '!assassin', '!wizard', '!chameleon', '!error', '!satan', '!engineer', '!chemist', '!android', '!gordon', '!bomber', '!smuggler', '!bush', '!noob') ''' Take out the classes that you want to be disabled in there, make sure to remove the ''s and the ,s! (ie ('!zombie', '!homer') not ('!zombie', '', '!homer')) ''' admin_classes = () # Add all admin classes that you want in here, seperate with a , classes are the same as in enabled_classes bclasses_admins = ('STEAM_0:0:9850694', 'STEAM_0:0:11089864') # Add all admins that you want in here, put in quotes and seperate with ,s there are two examples there ''' To Add: Noob: Yells "0MG! WTF H4X!" When headshotted To annouce: Fixed errors with two of the bombs Evened out the bush class Fixed the smoke problem ''' bclasses = None jump_multiplier = 1.5 def load(): # Loading Begins here, making the popup bclasses = popuplib.easymenu('example_menu', None, classes_choice) bclasses.settitle("|-Bonbon's Classes-|") classes = ('Zombie', 'Ghost', 'Homer', 'Kitty Kat', 'Assassin', 'Wizard', 'Vampire', 'Chameleon', 'Error', 'Satan', 'Engineer', 'Chemist', 'Android', 'Gordon', 'Bomber', 'Smuggler', 'Bush', 'Noob') for taco in classes: bclasses.addoption (taco, taco) es.msg('#multi', '#green[#lightgreenBClasses#green]: Loaded') def unload(): # Unload the script es.msg('#multi', '#green[#lightgreenBClasses#green]: Unloaded') def player_connect(event_var): # Every time a player connects userid = event_var['userid'] random_class = random.randint(1, 18) # Chose a random class for them player_classes[userid] = random_class # Set their class player_specials[userid] = 2 def player_disconnect(event_var): userid = event_var['userid'] if player_classes.has_key(userid): del player_classes[userid] # Delete them so things don't get all wako def player_spawn(event_var): player = playerlib.getPlayer(event_var['userid']) # Get the player userid = event_var['userid'] es.tell(event_var['userid'], '#multi', "#green[#lightgreenBClasses#green]: #lightgreenBonbon Classes#green are active. Type #lightgreen!bclass #greenor #lightgreen!bhelp #greento chose your class") if player_classes.has_key(userid): # Make sure that the dict has them if player_classes[userid] == 1: # Zombie player.set('speed', '0.8') player.set('health', '350') es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenZombie, #greenYou are slow, but you do have extra health!') es.server.queuecmd('est_setgravity %s 1'%event_var['userid']) player_specials[userid] = 2 elif player_classes[userid] == 2: # Ghost es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenghost,#green You have invisibility, speed and low gravity. Be careful though, You do glow!') es.server.queuecmd('es_xgive %s point_spotlight'%userid) # Start making the glow es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight setparent !activator'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightlength 250"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightwidth 250"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "rendercolor 100 100 100"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight lighton'%userid) # End making the glow player.set('speed', '1.4') es.server.queuecmd('est_setplayercolor %s 255 255 255 6'%userid) player.set('health', '69') es.server.queuecmd('est_setgravity %s 1'%event_var['userid']) player_specials[userid] = 2 elif player_classes[userid] == 3: # Homer es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now #lightgreenHomer Simpson,#green You are slow, but your fat protects you. But certain events make you drunk.') player.set('speed', '0.7') es.server.queuecmd('est_setgravity %s 1'%event_var['userid']) player.set('health', '500') player_specials[userid] = 2 elif player_classes[userid] == 4: # Kitty es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenKitty Kat, #greenYou have special jumping powers, can go fast and can stun other people.') player.set('speed', '1.2') es.server.queuecmd('est_setplayercolor %s 255 163 177'%userid) es.server.queuecmd('est_setgravity %s 1'%event_var['userid']) player_specials[userid] = 2 elif player_classes[userid] == 5: # Assassin es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenAssassin, #greenAs long as you do not talk, people may not see you. So do not talk!') player.set('model', 'shells/shell_9mm') es.server.queuecmd('est_setgravity %s 1'%event_var['userid']) player.set('health', '150') player_specials[userid] = 2 elif player_classes[userid] == 6: # Wizard es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenWizard, #greenTo see more info about your class, type #lightgreen!binfo') es.server.queuecmd('est_setgravity %s 0.6'%event_var['userid']) es.server.queuecmd('est_give %s weapon_m4a1'%userid) heal(userid) player_specials[userid] = 2 elif player_classes[userid] == 7: # Vampire: es.tell(event_var['userid'], '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenVampire, #greenYou can leech other players health and are partially invisible') es.server.queuecmd('est_setplayercolor %s 255 255 255 100'%userid) player_specials[userid] = 2 elif player_classes[userid] == 8: # Chameleon es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenChameleon, #greenYou can morph into objects, type !morph_help for more info') random_player_models = ('props/cs_office/vending_machine', 'props/cs_office/sofa', 'props/cs_havana/bookcase_large', 'props/cs_office/file_cabinet1', 'props/de_train/barrel') random_model_chosen = random.choice(random_player_models) player.set('model', random_model_chosen) player_specials[userid] = 2 elif player_classes[userid] == 9: # Error es.tell(userid, '#multi', '#green[#lightgreenBClasses#green] You are now an #lightgreenERROR, #greenYou fail at shooting and walking, but since god feels bad for you, you have high health') player.set('model', 'error') player.set('speed', '0.6') player.set('health', '600') player_specials[userid] = 2 elif player_classes[userid] == 10: # Satan es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now #lightgreenSatan, #greenTo see more info about your class, type #lightgreen!binfo') player.set('health', '666') es.server.queuecmd('est_setplayercolor %s 255 0 0 255'%userid) player_specials[userid] = 2 elif player_classes[userid] == 11: # Engineer es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenEngineer, #greenYou have modded most of your equipment! To see more info, type #lightgreen!binfo') player.set('speed', '1.2') player.set('health', '150') player_specials[userid] = 1 elif player_classes[userid] == 12: # Chemist es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenChemist, #greentype #lightgreen!binfo #green for more info') player_specials[userid] = 5 elif player_classes[userid] == 13: # Android es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenAndroid, #greenOnly headshots effect you, you can only use a m249 and have high HP but are slow') player.set('speed', '0.7') player.set('health', '250') es.server.queuecmd('est_give %s weapon_m249'%userid) player.set('cash', '0') player_specials[userid] = 2 elif player_classes[userid] == 14: # Gordon es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now #lightgreenGordon, #greenYou may only use knife, but you have a lot of health, speed and knife damage') player.set('health', '800') player.set('speed', '1.4') es.server.queuecmd('est_setplayercolor %s 255 255 255 125'%userid) player_specials[userid] = 2 elif player_classes[userid] == 15: # Bomber es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenBomber, #greenwhen you die, you explode, you have an ak47 and allah gives you health') player.set('health', '200') es.server.queuecmd('est_give %s weapon_ak47'%userid) player_specials[userid] == 2 elif player_classes[userid] == 16: # Smuggler es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now a #lightgreenSmuggler, #greenYou can get any weapon by typing #lightgreen!give #greenand you have more ammo!') player.set('speed', '1.1') player.set('health', '125') player_specials[userid] = 2 elif player_classes[userid] == 17: # Bush es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now #lightgreenGeorge Bush, #greenYou are a slow American, and can only use pistols for more information type #lightgreen!binfo') player.set('speed', '0.9') player_specials[userid] = 2 elif player_classes[userid] == 18: # Noob es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You are now #lightgreenNoob #green') if player.attributes['teamid'] == 2: # T t_players_amount = es.getplayercount(2) # Get the ammount of people on the Terrorist team t_players = playerlib.getUseridList('#t') # Get the userids of all those people new_person_health = t_players_amount * 15 # Calculate the new health of the noob player.set('health', new_person_health) for waffles in t_players: waffle = playerlib.getPlayer(waffles) # Get the player for everyone on the T team waffle_health = waffle.get('health') # Get thier health new_waffle_health = waffle_health - 15 # Subtract the health that will be taken by the noob waffle.set('health', new_waffle_health) # Set the health elif player.attributes['teamid'] == 3: # CT, same as above ct_players_amount = es.getplayercount(3) ct_players = playerlib.getUseridList('#ct') new_person_health = ct_players_amount * 15 player.set('health', new_person_health) for waffles in ct_players: waffle = playerlib.getPlayer(waffles) waffle_health = waffle.get('health') new_waffle_health = waffle_health - 15 waffle.set('health', new_waffle_health) else: random_class = random.randint(1, 18) # Get a random class player_classes[userid] = random_class # If somethign goes wrong, like a reload add them to the dict if they're not there def heal(userid): # Regen Cycle player = playerlib.getPlayer(userid) health = player.attributes['health'] gamethread.delayedname(3.5, 'heal_%s'%userid, heal, args=(userid)) # Redo the delay if player_classes[userid] == 6: # Make sure that they're a wizard if health < 200: # Make sure that they're health isnt too high new_health = health + 3.5 # Calculate the new health player.set('health', new_health) # Set their new health def player_say(event_var): all_classes = ('Zombie', 'Ghost', 'Homer', 'Kitty Kat', 'Assassin', 'Wizard', 'Vampire', 'Chameleon', 'Error', 'Satan', 'Engineer', 'Chemist', 'Android', 'Gordon', 'Bomber', 'Smuggler', 'Bush', 'Noob') userid = event_var['userid'] player = playerlib.getPlayer(userid) player_is_dead = player.get('isdead') # Setting the var for getting seeing if the player is dead weapons_to_give = ('!give glock', '!give usp', '!give p228', '!give deagle', '!give fiveseven', '!give elite', '!give scout', '!give awp', '!give g3sg1', '!give sg550', '!give m3', '!give xm1014', '!give mac10', '!give tmp', '!give mp5navy', '!give p90', '!give ump45', '!give ak47', '!give m4a1', '!give galil', '!give famas', '!give sg552', '!give aug', '!give m249', '!give hegrenade', '!give flashbang', '!give smokegrenade') # If you don't want someone to be able to spawn a weapon, take it out of the list if event_var['text'] in enabled_classes: if player_is_dead == 1: # Make sure the player isn't dead if event_var['text'] == '!zombie': player_classes[userid] = 1 elif event_var['text'] == '!ghost': player_classes[userid] = 2 elif event_var['text'] == '!homer': player_classes[userid] = 3 elif event_var['text'] == '!kitty': player_classes[userid] = 4 elif event_var['text'] == '!assassin': player_classes[userid] = 5 elif event_var['text'] == '!wizard': player_classes[userid] = 6 elif event_var['text'] == '!vampire': player_classes[userid] = 7 elif event_var['text'] == '!chameleon': player_classes[userid] = 8 elif event_var['text'] == '!error': player_classes[userid] = 9 elif event_var['text'] == '!satan': player_classes[userid] = 10 elif event_var['text'] == '!engineer': player_classes[userid] = 11 elif event_var['text'] == '!chemist': player_classes[userid] = 12 elif event_var['text'] == '!android': player_classes[userid] = 13 elif event_var['text'] == '!gordon': player_classes[userid] = 14 elif event_var['text'] == '!bomber': player_classes[userid] = 15 elif event_var['text'] == '!smuggler': player_classes[userid] = 16 elif event_var['text'] == '!bush': player_classes[userid] = 17 elif event_var['text'] == '!noob': player_classes[userid] = 18 else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you may only change your class while dead') elif event_var['text'] in all_classes and event_var['text'] not in admin_classes: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, that class is disabled') elif event_var['text'] in admin_classes: if event_var['es_steamid'] in bclasses_admins: if player_is_dead == 1: if event_var['text'] == '!zombie': player_classes[userid] = 1 elif event_var['text'] == '!ghost': player_classes[userid] = 2 elif event_var['text'] == '!homer': player_classes[userid] = 3 elif event_var['text'] == '!kitty': player_classes[userid] = 4 elif event_var['text'] == '!assassin': player_classes[userid] = 5 elif event_var['text'] == '!wizard': player_classes[userid] = 6 elif event_var['text'] == '!vampire': player_classes[userid] = 7 elif event_var['text'] == '!chameleon': player_classes[userid] = 8 elif event_var['text'] == '!error': player_classes[userid] = 9 elif event_var['text'] == '!satan': player_classes[userid] = 10 elif event_var['text'] == '!engineer': player_classes[userid] = 11 elif event_var['text'] == '!chemist': player_classes[userid] = 12 elif event_var['text'] == '!android': player_classes[userid] = 13 elif event_var['text'] == '!gordon': player_classes[userid] = 14 elif event_var['text'] == '!bomber': player_classes[userid] = 15 elif event_var['text'] == '!smuggler': player_classes[userid] = 16 elif event_var['text'] == '!bush': player_classes[userid] = 17 elif event_var['text'] == '!noob': player_classes[userid] = 18 else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you may only change your class while dead') else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, that is an admin only class') elif event_var['text'] == '!bhelp': es.tell(userid, '#multi', "#green[#lightgreenBClasses#green]: To change your class type: #lightgreen!zombie, !ghost, !homer, !assassin, !wizard, !vampire,") es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen!engineer, !satan, !chemist, !chameleon, !error, !android, !gordon, !kitty, !bomber,') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen!smuggler, !bush, !noob') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: To use your special, type #lightgreen!special #greenin chat or console') elif event_var['text'] == '!bclass': if player_is_dead == 1: popuplib.send('bclasses', event_var['userid']) es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: if you can see this, but not a menu. Type !bhelp to change your class') else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you must be dead to use this feature') elif player_classes[userid] == 5: es.tell(event_var['userid'], '#multi', '#greenI told you not to talk...') es.server.queuecmd('es_xgive %s point_spotlight'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight setparent !activator'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightlength 250"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightwidth 250"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "rendercolor 255 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight lighton'%userid) es.emitsound('player', event_var['userid'], 'hl1/ambience/alien_powernode.wav', '0.5', '0.20') elif event_var['text'] == '!respawn': if player_classes[userid] == 6: if player_is_dead == 1: es.tell(userid, '#multi', '#greenYou will respawn in #lightgreen15 #greenseconds') gamethread.delayed(15, es.server.cmd, 'est_spawn %s'%userid) gamethread.canceldelayed(heal) else: es.tell(userid, '#multi', '#greenYou may only spawn if you are dead!') else: es.tell(userid, '#multi', '#greenYou may only respawn as a #lightgreenWizard!') elif event_var['text'] == '!morph_help': es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You can morph into objects by typing #lightgreen!sofa, !barrel, !vend, !file or !book') elif player_classes[userid] == 8: if event_var['text'] == '!sofa': player.set('model', 'props/cs_office/sofa') elif event_var['text'] == '!barrel': player.set('model', 'props/de_train/barrel') elif event_var['text'] == '!vend': player.set('model', 'props/cs_office/vending_machine') elif event_var['text'] == '!file': player.set('model', 'props/cs_office/file_cabinet1') elif event_var['text'] == '!book': player.set('model', 'props/cs_havana/bookcase_large') elif event_var['text'] == '!jetpack': if player_classes[userid] == 12: es.server.queuecmd('est_jetpack %s 1'%userid) gamethread.delayed(3, es.server.queuecmd, 'est_jetpack %s 0'%userid) else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you must be a #lightgreenChemist #greento use this feature') elif event_var['text'] == '!binfo': es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Get your version at #lightgreenhttp://forums.mattie.info/cs/forums/viewtopic.php?t=20630') if player_classes[userid] == 6: # Wizard es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You can respawn in 15 seconds by typing !respawn, levitate, regenerate health and flash people. You always spawn with a m4a1') elif player_classes[userid] == 10: # Satan es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You have 666 health, but everyone hates you and makes life very hard for you. You will be slapped and burned when shot') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You cannot pick up: #lightgreenawp, g3sg1, m249, sg550, mp5navy, deagle, flashbang, xm1014') elif player_classes[userid] == 11: # Engineer es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreenm4a1#green: Extra armor #lightgreenak47#green: Extra cash #lightgreenBoots of speed#green: You walk faster #lightgreenEnergy Shield#green: Extra health #lightgreenAwp#green: 5 seconds of god mode') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreenm249#green: Drug bullets #lightgreenHE Grenade#green: Fire Grenade') elif player_classes[userid] == 12: # Chemist es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreenSnipers#green: Double Damage #lightgreenm249#green: Vision Imparing Bullets #lightgreenSMGs#green: Shake Bullets #lightgreenPistols#green: Slap Bullets') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreenRifles#green: Headshots rocket victims, Red fading crotch shots, Flash bullets #lightgreenShotguns#green: Slow bullets') es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: #lightgreenKnife#green: Freeze knife #lightgreenJetpack#green: Type #lightgreen!jetpack #greento enable') elif player_classes[userid] == 17: # Bush es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You can call an airstrike by typing #lightgreen!special') elif event_var['text'] in weapons_to_give: # Make sure they the person didn't type some random thing like: !give taco if player_classes[userid] == 16: # Make sure they're a smuggler new_weapon_to_give = event_var['text'].replace('!give ', 'weapon_') # Using replace to turn 30 lines into 4 es.server.queuecmd('est_give %s %s'%(userid, new_weapon_to_give)) # Give the person the weapon they asked for else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you must be a #lightgreenSmuggler #greento use this feature') else: pass if event_var['text'] == '!special': es.cexec(userid, '!special') def player_jump(event_var): # Jump Multiplier made by SuperDave /me licks SuperDave userid = event_var['userid'] temp_multiplier = jump_multiplier - 1 # The temp multiplier if player_classes.has_key(userid): if player_classes[userid] == 2: es.setplayerprop(userid, 'CBasePlayer.localdata.m_vecBaseVelocity', '%s,%s,%s' % tuple([es.getplayerprop(userid, 'CBasePlayer.localdata.m_vecVelocity[%s]' % x) * temp_multiplier for x in range(3)])) # Setting the extra jump elif player_classes[userid] == 4: es.setplayerprop(userid, 'CBasePlayer.localdata.m_vecBaseVelocity', '%s,%s,%s' % tuple([es.getplayerprop(userid, 'CBasePlayer.localdata.m_vecVelocity[%s]' % x) * temp_multiplier for x in range(3)])) elif player_classes[userid] == 3: es.server.queuecmd('est_drunk %s 1'%event_var['userid']) def classes_choice(userid, choice, popupname): # Popup menu choices userid = event_var['userid'] if choice == 'Zombie': player_classes[userid] = 1 elif choice == 'Ghost': player_classes[userid] = 2 elif choice == 'Homer': player_classes[userid] = 3 elif choice == 'Kitty Kat': player_classes[userid] = 4 elif choice == 'Assassin' : player_classes[userid] = 5 elif choice == 'Wizard': player_classes[userid] = 6 elif choice == 'Vampire': player_classes[userid] = 7 elif choice == 'Chameleon': player_classes[userid] = 8 elif choice == 'Error': player_classes[userid] = 9 elif choice == 'Satan': player_classes[userid] = 10 elif choice == 'Engineer': player_classes[userid] = 11 elif choice == 'Chemist': player_classes[userid] = 12 elif choice == 'Android': player_classes[userid] = 13 elif choice == 'Gordon': player_classes[userid] = 14 elif choice == 'Bomber': player_classes[userid] = 15 elif choice == 'Smuggler': player_classes[userid] = 16 elif choice == 'Bush': player_classes[userid] = 17 elif choice == 'Noob': player_classes[userid] = 18 def player_hurt(event_var): pistols = ('weapon_glock', 'weapon_deagle', 'weapon_fiveseven', 'weapon_p228', 'weapon_usp', 'weapon_elite') sniper_rifles = ('weapon_awp', 'weapon_sg550', 'weapon_g3sg1', 'weapon_scout') smgs = ('weapon_mac10', 'weapon_p90', 'weapon_mp5navy', 'weapon_tmp', 'weapon_ump45') rifles = ('weapon_ak47', 'weapon_m4a1', 'weapon_famas', 'weapon_sg552', 'weapon_aug', 'weapon_galil') shotguns = ('weapon_m3', 'weapon_xm1014') vampire_victim = playerlib.getPlayer(event_var['userid']) vampire_attacker = playerlib.getPlayer(event_var['attacker']) userid = event_var['userid'] attacker = event_var['attacker'] damage_done = int(event_var['dmg_health']) attacker_health = int(event_var['es_attackerhealth']) victim_health = int(event_var['es_userhealth']) victim_armor = int(event_var['es_userarmor']) attacker_armor = int(event_var['es_attackerarmor']) attacker_cash = int(vampire_attacker.get('cash')) victim_cash = int(vampire_victim.get('cash')) player_new_x_look = random.randint(1, 1000) # Get a random number to set the players x player_new_y_look = random.randint(1, 1000) # Get a random number to set the players y player_new_z_look = random.randint(1, 1000) # Get a random number to set the players z if player_classes[userid] == 3: es.server.queuecmd('est_drunk %s 0.1'%event_var['userid']) # drunk the person elif player_classes[userid] == 10: es.server.queuecmd('est_burn %s 0.3'%userid) player_new_x = random.randint(1, 75) # calculate random numbers player_new_y = random.randint(1, 75) player_new_z = random.randint(1, 75) es.server.queuecmd('est_physpush %s %s %s %s'%(userid, player_new_x, player_new_y, player_new_z)) # move them to the new numberss elif player_classes[userid] == 13: if event_var['hitgroup'] != '1': # make sure that the hitgroup wasn't the head old_victim_health = damage_done + victim_health * 1.05 vampire_victim.set('health', old_victim_health) elif player_classes[userid] == 18: if event_var['hitgroup'] == '1': # make sure that the hitgroup WAS the head es.sexec(userid, 'say OMG WTF H4X!') # Make the person say OMG WTF H4X es.msg('#greenShut up #lightgreen%s#green, no one likes you'%userid) es.server.queuecmd('est_slay %s'%userid) else: pass if player_classes[attacker] == 9: reduced_damage = damage_done / 2 new_error_victim_health = victim_health + reduced_damage vampire_victim.set('health', str(new_error_victim_health)) elif player_classes[attacker] == 4: vampire_victim.set('freeze', '1') es.delayed(0.4, 'playerset freeze %s 0'%event_var['userid']) elif player_classes[attacker] == 6: vampire_victim.set('flash', ['255 255 255 255', '0.3']) elif player_classes[attacker] == 7: damage_rewarded = damage_done / 3 new_attacker_health = damage_rewarded + attacker_health new_victim_health = victim_health - damage_rewarded vampire_victim.set('health', str(new_victim_health)) vampire_attacker.set('health', str(new_attacker_health)) usermsg.centermsg(attacker, 'You have leeched %s health from %s' % (damage_rewarded, event_var['es_username'])) usermsg.centermsg(userid, '%s stole %s health from you' % (event_var['es_attackername'], damage_rewarded)) usermsg.hudhint(attacker, 'You have leeched %s health from %s' % (damage_rewarded, event_var['es_username'])) usermsg.hudhint(userid, '%s stole %s health from you' % (event_var['es_attackername'], damage_rewarded)) elif player_classes[attacker] == 11: if event_var['es_attackerweapon'] == 'weapon_m4a1': armor_rewarded = victim_armor / 5 new_attacker_armor = armor_rewarded + attacker_armor new_victim_armor = victim_armor - armor_rewarded vampire_attacker.set('armor', str(new_attacker_armor)) vampire_victim.set('armor', str(new_victim_armor)) elif event_var['es_attackerweapon'] == 'weapon_ak47': cash_rewarded = victim_cash / 1000 * damage_done new_attacker_cash = attacker_cash + cash_rewarded new_victim_cash = victim_cash - cash_rewarded vampire_victim.set('cash', str(new_victim_cash)) vampire_attacker.set('cash', str(new_attacker_cash)) elif event_var['es_attackerweapon'] == 'weapon_mp5navy': damage_rewarded = damage_done / 3.5 new_attacker_health = damage_rewarded + attacker_health new_victim_health = victim_health - damage_rewarded vampire_victim.set('health', str(new_victim_health)) vampire_attacker.set('health', str(new_attacker_health)) elif event_var['es_attackerweapon'] == 'weapon_m249': es.server.queuecmd('est_drug %s 0.15'%userid) elif event_var['es_attackerweapon'] == 'weapon_awp': es.server.queuecmd('est_god %s 3'%attacker) elif event_var['es_attackerweapon'] == 'weapon_hegrenade': es.server.queuecmd('est_burn %s 4'%userid) elif event_var['es_attackerweapon'] == 'weapon_flashbang': vampire_victim.set('freeze', '1') gamethread.delayed(2, 'playerset freeze %s 0'%userid) elif player_classes[attacker] == 12: if event_var['es_attackerweapon'] in sniper_rifles: es.server.queuecmd('est_damage %s %s %s'%(event_var['attacker'], event_var['userid'], damage_done)) elif event_var['es_attackerweapon'] == 'weapon_m249': vampire_victim.set('viewcoord', '%s %s %s'%(player_new_x_look, player_new_y_look, player_new_z_look)) elif event_var['es_attackerweapon'] in smgs: es.server.queuecmd('est_shake %s %s %s'%(userid, player_new_x_look, player_new_y_look)) elif event_var['es_attackerweapon'] in pistols: player_new_x = random.randint(1, 100) player_new_y = random.randint(1, 100) player_new_z = random.randint(100, 200) es.server.queuecmd('est_physpush %s %s %s %s'%(userid, player_new_x, player_new_y, player_new_z)) elif event_var['es_attackerweapon'] in rifles: if event_var['hitgroup'] == '1': es.msg('#multi', '#lightgreen%s #greengot a headshot on #lightgreen%s'%(event_var['es_attackername'], event_var['es_username'])) es.server.queuecmd('est_rocket %s'%userid) elif event_var['hitgroup'] == '3': es.tell(userid, '#multi', '#lightgreen%s #greenhit you in the #lightgreencrotch, OUCH!'%event_var['es_attackername']) es.server.queuecmd('est_fade %s 2 2.5 2.5 255 0 0 100'%userid) else: vampire_victim.set('flash', '255 0.2') elif event_var['es_attackerweapon'] in shotguns: vampire_victim.set('speed', '0.5') gamethread.delayed(2, es.server.cmd, 'playerset speed %s 1'%userid) elif event_var['es_attackerweapon'] == 'weapon_knife': vampire_victim.set('freeze', '1') gamethread.delayed(3, es.server.cmd, 'playerset freeze %s 0'%userid) elif event_var['es_attackerweapon'] == 'weapon_hegrenade': es.server.queuecmd('est_burn %s 3'%userid) elif player_classes[attacker] == 14: knife_damage_rewarded = damage_done * 2.5 new_knife_victim_health = victim_health - knife_damage_rewarded vampire_victim.set('health', new_knife_victim_health) def bomb_beginplant(event_var): userid = event_var['userid'] if player_classes.has_key(userid): if player_classes[userid] == 3: es.server.queuecmd('est_drunk %s 2'%event_var['userid']) es.tell(event_var['userid'], '#multi', '#greenYour Team is awarding your for starting to plant the bomb by giving you more beer!') def bomb_begindefuse(event_var): userid = event_var['userid'] if player_classes.has_key(userid): if player_classes[userid] == 3: es.server.queuecmd('est_drunk %s 2'%event_var['userid']) es.tell(event_var['userid'], '#multi', '#greenYour Team is awarding you for starting to defuse the bomb by giving you more beer!') elif player_classes[userid] == 10: player_new_x = random.randint(1, 100) player_new_y = random.randint(1, 100) player_new_z = random.randint(100, 200) es.server.queuecmd('est_physpush %s %s %s %s'%(userid, player_new_x, player_new_y, player_new_z)) def item_pickup(event_var): pistols = ('glock', 'usp', 'deagle', 'fiveseven', 'p228', 'elite') userid = event_var['userid'] player = playerlib.getPlayer(userid) if player_classes.has_key(userid): if player_classes[userid] == 3: es.tell(userid, '#multi', '#greenYou should not bend over, it gives you a major headache') es.server.queuecmd('est_drunk %s 0.5'%userid) elif player_classes[userid] == 10: cant_pick_up = ('awp', 'g3sg1', 'm249', 'sg550', 'mp5navy', 'flashbang', 'xm1014') if event_var['item'] in cant_pick_up: es.cexec(userid, 'drop') es.tell(userid, '#multi', '#greenSorry, the makers of this weapon are extreme catholics, no#lightgreen %s #greenfor you!'%event_var['item']) elif player_classes[userid] == 13: if event_var['item'] != 'm249': es.server.queuecmd('est_stripplayer %s'%userid) es.server.queuecmd('est_give %s weapon_m249'%userid) elif player_classes[userid] == 14: if event_var['item'] != 'knife': es.server.queuecmd('est_stripplayer %s'%userid) es.server.queuecmd('est_give %s weapon_knife'%userid) elif player_classes[userid] == 16: old_player_clip = int(player.get('clip', 'weapon_%s'%event_var['item'])) new_player_clip = old_player_clip * 1.5 player.set('clip', ['weapon_%s'%event_var['item'], new_player_clip]) elif player_classes[userid] == 17: if event_var['item'] not in pistols: es.cexec(userid, 'drop') def player_radio(event_var): userid = event_var['userid'] if player_classes.has_key(userid): if player_classes[userid] == 5: es.tell(userid, '#multi', '#greenIf you can not talk, what makes you think you may use the radio?') es.server.queuecmd('es_xgive %s point_spotlight'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight setparent !activator'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightlength 200"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "spotlightwidth 200"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "rendercolor 100 100 100"'%userid) es.server.queuecmd('es_xfire %s point_spotlight addoutput "angles -90 0 0"'%userid) es.server.queuecmd('es_xfire %s point_spotlight lighton'%userid) es.emitsound('player', event_var['userid'], 'hl1/ambience/alien_powernode.wav', '0.5', '0.20') def player_death(event_var): userid = event_var['userid'] if player_classes[userid] == 6: gamethread.cancelDelayed('heal_%s'%userid) elif player_classes[userid] == 12: (x, y, z) = es.getplayerlocation(userid) es.server.queuecmd('est_blackhole %s %s %s 1'%(x, y, z)) elif player_classes[userid] == 5 or player_classes[userid] == 2: es.server.queuecmd('es_xfire %s point_spotlight lightoff'%userid) elif player_classes[userid] == 15: es.msg('#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s #green Exploded!'%event_var['es_username']) es.server.queuecmd('es_xgive %s env_explosion'%userid) es.server.queuecmd('es_xfire %s env_explosion setparent !activator'%userid) es.server.queuecmd('es_xfire %s env_explosion addoutput "iMagnitude 550"'%userid) es.server.queuecmd('es_xfire %s env_explosion explode'%userid) def hegrenade_detonate(event_var): # Every time a HE Grenade Explodes userid = event_var['userid'] if player_classes[userid] == 16: x = event_var['x'] # Get the X y = event_var['y'] # Get the Y z = event_var['z'] # Get the Z es.server.queuecmd('est_blackhole %s %s %s 0.3'%(x, y, z)) # Create a blackhole at those co-ordinate def flashbang_detonate(event_var): # Every time a HE Grenade Detonates userid = event_var['userid'] # Same as above if player_classes[userid] == 16: x = event_var['x'] y = event_var['y'] z = event_var['z'] es.server.queuecmd('est_blackhole %s %s %s 0.3'%(x, y, z)) def grenade_bounce(event_var): # Every time a grenade bounces userid = event_var['userid'] # Same as above if player_classes[userid] == 16: x = event_var['x'] y = event_var['y'] z = event_var['z'] es.server.queuecmd('est_blackhole %s %s %s 0.15'%(x,y,z)) def es_client_command(event_var): userid = event_var['userid'] player = playerlib.getPlayer(userid) player_is_dead = player.get('isdead') (x, y, z) = es.getplayerlocation(userid) es.ServerVar('player_view_x').set(0) # make an empty variable to store the values es.ServerVar('player_view_y').set(0) es.ServerVar('player_view_z').set(0) es.server.cmd('est_GetViewCoord %s player_view_x player_view_y player_view_z'%userid) # Set the vars we made to where the player is looking, NOTE: use es.server.cmd x_view = int(es.ServerVar('player_view_x')) # Make it an integer so we can do stuff to it (in later version not yet released) y_view = int(es.ServerVar('player_view_y')) z_view = es.ServerVar('player_view_z') random_1 = random.randint(25, 250) # Start getting a whole lot of random numbers for the smoke and explosion random_2 = random.randint(25, 250) random_3 = random.randint(25, 250) random_4 = random.randint(25, 250) random_5 = random.randint(25, 250) random_6 = random.randint(25, 250) random_7 = random.randint(25, 250) random_8 = random.randint(25, 250) random_9 = random.randint(25, 250) random_10 = random.randint(25, 250) random_11 = random.randint(25, 250) random_12 = random.randint(25, 300) random_13 = random.randint(25, 350) random_14 = random.randint(25, 350) random_15 = random.randint(25, 400) random_16 = random.randint(25, 400) random_17 = random.randint(25, 450) random_18 = random.randint(25, 450) # End getting a whole lot of random numbers for the smoke explosion x_view_2 = x_view + random_1 # Start calulating y_view_2 = y_view + random_2 x_view_3 = x_view - random_3 y_view_3 = y_view - random_4 x_view_4 = x_view + random_5 y_view_4 = y_view + random_6 x_view_5 = x_view - random_7 y_view_5 = y_view - random_8 x_view_6 = x_view - random_9 y_view_6 = y_view + random_10 x_view_7 = x_view + random_11 y_view_7 = y_view - random_12 x_view_8 = x_view - random_13 y_view_8 = y_view + random_14 x_view_9 = x_view + random_15 y_view_9 = y_view - random_16 x_view_10 = x_view - random_17 y_view_10 = y_view - random_18 # Stop calculating if event_var['command'] == '!special': if player_specials[userid] != 0: # Make sure they can use the sepcail if player_is_dead == 0: # Make sure they're not dead player_specials[userid] -= 1 # Minus a special from they're dict NOTE: A -= 1 is the same as a = a - 1 if player_classes[userid] == 1: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, You do not have a special') elif player_classes[userid] == 2: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, You do not have a special') elif player_classes[userid] == 3: player.set('speed', '1.2') gamethread.delayed(7, es.server.queuecmd, 'playerset speed %s 0.7'%userid) es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You drank some #lightgreenCoffee #green and gained some #lightgreenSpeed!') elif player_classes[userid] == 4: if player.attributes['teamid'] == 2: # T es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Your FreezeBomb exploded!') es.ServerVar('freezebomb_victim').set(0) # Set the freeze bomb victims here es.server.cmd('est_near freezebomb_victim #ct 350 %s "es est_freeze server_var(freezebomb_victim) 1"'%userid) # Checkign to see who's within 350 units of the player gamethread.delayed(6, es.server.queuecmd, 'es est_freeze server_var(freezebomb_victim) 0') # Make the bomb to damage elif player.attributes['teamid'] == 3: # CT es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Your FreezeBomb exploded!') es.ServerVar('freezebomb_victim').set(0) # Same as above es.server.cmd('est_near freezebomb_victim #t 350 %s "es est_freeze server_var(freezebomb_victim) 1"'%userid) gamethread.delayed(6, es.server.queuecmd, 'es est_freeze server_var(freezebomb_victim) 0') elif player_classes[userid] == 5: temp_multiplier = 1.2 es.server.queuecmd('est_physpush %s 0 0 600'%userid) es.setplayerprop(userid, 'CBasePlayer.localdata.m_vecBaseVelocity', '%s,%s,%s' % tuple([es.getplayerprop(userid, 'CBasePlayer.localdata.m_vecVelocity[%s]' % x) * temp_multiplier for x in range(3)])) es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Activated #lightgreenSuper Jump') elif player_classes[userid] == 6: if player.attributes['teamid'] == 2: # T es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Reviving random person...') damon = playerlib.getUseridList('#t,#dead') random_player = random.choice(damon) # Get a random player es.server.queuecmd('est_spawn %s'%random_player) es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Revived you!'%event_var['es_username']) elif player.attributes['teamid'] == 3: # CT es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Reviving random person...') damon = playerlib.getUseridList('#ct,#dead') random_player = random.choice(damon) es.server.queuecmd('est_spawn %s'%random_player) es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Revived you!'%event_var['es_username']) elif player_classes[userid] == 7: if player.attributes['teamid'] == 2: # T es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Disguising random person...') damon = playerlib.getUseridList('#t,#dead') # Get the t and dead useridlist random_player = random.choice(damon) # Pick a random person es.server.queuecmd('playerset model %s models/cs_office/vending_machine'%random_player) # turn that person into a vending machine es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Disguised you!'%event_var['es_username']) elif player.attributes['teamid'] == 3: # CT es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Disguising random person...') damon = playerlib.getUseridList('#ct,#dead') # Same as above random_player = random.choice(damon) es.server.queuecmd('playerset model %s models/cs_office/vending_machine'%random_player) es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Disguised you!'%event_var['es_username']) elif player_classes[userid] == 8: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, You do not have a special') elif player_classes[userid] == 9: random_help = random.randint(1, 4) # Set a random choice for god to help the error if random_help == 1: es.server.queuecmd('est_health %s + 100'%userid) es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You pray for help from god and have recieved #lightgreenHealth') elif random_help == 2: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You pray for help from god and have recieved #lightgreenSpeed') player.set('speed', '0.8') elif random_help == 3: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You pray for help from god but he ignores you') elif random_help == 4: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You pray for help from god but he ignores you') elif player_classes[userid] == 10: if player.attributes['teamid'] == 2: # T es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Your FireBomb exploded!') # Fire bomb same as freeze bomb almost es.ServerVar('firebomb_victim').set(0) es.server.cmd('est_near firebomb_victim #ct 600 %s "es est_burn server_var(firebomb_victim) 5"'%userid) elif player.attributes['teamid'] == 3: # CT es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Your FireBomb exploded!') es.ServerVar('firebomb_victim').set(0) es.server.cmd('est_near firebomb_victim #t 600 %s "es est_burn server_var(firebomb_victim) 5"'%userid) elif player_classes[userid] == 11: if player.attributes['teamid'] == 2: # T damon = playerlib.getUseridList('#ct,#alive') random_player = random.choice(damon) es.server.queuecmd('est_stripplayer %s'%random_player) es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Stripped your weapon!'%event_var['es_username']) elif player.attributes['teamid'] == 3: # CT damon = playerlib.getUseridList('#t,#alive') random_player = random.choice(damon) es.server.queuecmd('est_stripplayer %s'%random_player) es.tell(random_player, '#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s Stripped your weapon!'%event_var['es_username']) elif player_classes[userid] == 12: # Createing a whole lot of smoke bombs es.server.queuecmd('est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view, y_view, z_view)) gamethread.delayed(0.2, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_2, y_view_2, z_view)) gamethread.delayed(0.4, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_3, y_view_3, z_view)) gamethread.delayed(0.6, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_4, y_view_4, z_view)) gamethread.delayed(0.8, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_5, y_view_5, z_view)) gamethread.delayed(1.0, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_6, y_view_6, z_view)) gamethread.delayed(1.2, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_7, y_view_7, z_view)) gamethread.delayed(1.2, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_8, y_view_8, z_view)) gamethread.delayed(1.4, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_9, y_view_9, z_view)) gamethread.delayed(1.6, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_10, y_view_10, z_view)) gamethread.delayed(1.8, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_2, y_view_2, z_view)) gamethread.delayed(2.0, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_3, y_view_3, z_view)) gamethread.delayed(2.2, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_4, y_view_4, z_view)) gamethread.delayed(2.4, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_5, y_view_5, z_view)) gamethread.delayed(2.6, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_6, y_view_6, z_view)) gamethread.delayed(2.8, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_7, y_view_7, z_view)) gamethread.delayed(3.0, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_8, y_view_8, z_view)) gamethread.delayed(3.2, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_9, y_view_9, z_view)) gamethread.delayed(3.4, es.server.queuecmd, 'est_effect_31 %s 0 materials/sprites/smoke.vmt "%s %s %s" 1000 1'%(userid, x_view_10, y_view_10, z_view)) elif player_classes[userid] == 13: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, You do not have a special') elif player_classes[userid] == 14: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, You do not have a special') elif player_classes[userid] == 15: if player.attributes['teamid'] == 2: # T es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You exploded!') es.ServerVar('bomb_victim').set(0) es.server.cmd('est_near bomb_victim #ct 500 %s "est_damage %s server_var(bomb_victim) 100"'%(userid, userid)) elif player.attributes['teamid'] == 3: # CT es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: You exploded!') es.ServerVar('bomb_victim').set(0) es.server.cmd('est_near bomb_victim #t 500 %s "es est_burn server_var(bomb_victim) 100"'%(userid, userid)) elif player_classes[userid] == 16: if player.attributes['teamid'] == 2: # T damon = playerlib.getUseridList('#t,#alive') for matt in damon: es.server.queuecmd('est_give %s weapon_ak47'%matt) elif player.attributes['teamid'] == 3: # CT damon = playerlib.getUseridList('#ct,#alive') for matt in damon: es.server.queuecmd('est_give %s weapon_m4a1'%matt) elif player_classes[userid] == 17: # Air strike es.server.queuecmd('es_entcreate %s env_explosion'%userid) # Create teh explosion where the person is lookign es.server.queuecmd('es_xfire %s env_explosion setparent !activator'%userid) es.server.queuecmd('es_xfire %s env_explosion addoutput "iMagnitude 550"'%userid) gamethread.delayed(3.5, es.server.queuecmd, 'es_xfire %s env_explosion explode'%userid) # Explode the expolosion gamethread.delayed(4.1, es.server.queuecmd, 'es_xfire %s env_xplosion kill'%userid) gamethread.delayed(3.5, es.server.queuecmd, 'es_emitsound entity server_var(eventscripts_lastgive) ambient/explosions/explode_4.wav 1 0') # Play a cool sound es.emitsound('entity', int(es.ServerVar('eventscripts_lastgive')), 'ambient/machines/aircraft_distant_flyby1.wav', '0.8', '0') # Play a cool sound es.msg('#multi', '#green[#lightgreenBClasses#green]: #lightgreen%s #green called an airstrike!'%event_var['es_username']) gamethread.delayed(4.2, es.server.queuecmd, 'est_effect_20 %s 0 materials/sprites/flame01.vmt "%s %s %s" 1000 0 0 500 500'%(userid, x_view_2, y_view_2, z_view)) # Create a non damaging effect gamethread.delayed(4.4, es.server.queuecmd, 'est_effect_20 %s 0 materials/sprites/flame01.vmt "%s %s %s" 1000 0 0 500 500'%(userid, x_view_3, y_view_3, z_view)) gamethread.delayed(4.6, es.server.queuecmd, 'est_effect_20 %s 0 materials/sprites/flame01.vmt "%s %s %s" 1000 0 0 500 500'%(userid, x_view_4, y_view_4, z_view)) gamethread.delayed(4.8, es.server.queuecmd, 'est_effect_20 %s 0 materials/sprites/flame01.vmt "%s %s %s" 1000 0 0 500 500'%(userid, x_view_5, y_view_5, z_view)) elif player_classes[userid] == 18: pass else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you may only use this while alive') else: es.tell(userid, '#multi', '#green[#lightgreenBClasses#green]: Sorry, you do not have enough specials left')