# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # Bonbon's Mug Cash script requested by Celine # # Requires: # # Eventscripts 2.0 # # ES_Tools # # # # add the line es_load bmug to your autoexec.cfg # # # # Thank you to: # # Celine who had the idea for this # # Venjax who it was inspired by # # # # If you have any questions e-mail me at: # # drunkenmousehide@hotmail.com # # or use the PMS on the eventscripts formums # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # import es, gamethread, playerlib player_time = {} player_prop = {} ### Start config ### money_per_second = 100 # The amount of money a person can steal per second Default: 300 money_range = 300 # The range in which people can steal money from dead peoples Default: 300 money_time = 30 # The amount of time people can mug people Default: 30 NOTE: DO NOT PUT OVER 998! ### End Config ### model_list = ['mdl', 'dx80.vtx', 'dx90.vtx', 'phy', 'sw.vtx', 'vvd', 'xbox.vtx'] material_list = ['vmt', 'vtf'] model_dir = 'models/extras/money/info_speech.' material_dir = 'materials/models/extras/money/speech_info.' def load(): es.msg('#multi', '#green[#lightgreenBMUG#green]: Loaded') addstuffs0rz() def unload(): es.msg('#multi', '#green[#lightgreenBMUG#green]: Unloaded') def round_start(event_var): es.msg('#multi', '#green[#lightgreenBMUG#green]: BMUG is active, when a person dies you have #lightgreen%s#green seconds to mug them!'%money_time) def player_connect(event_var): global player_time player_time[event_var['userid']] = 0 player_prop[event_var['userid']] = 0 def player_disconnect(event_var): userid = event_var['userid'] if player_time.has_key(userid): del player_time[userid] if player_prop.has_key(userid): del player_prop[userid] def round_end(event_var): global player_time for userid in playerlib.getUseridList('#all'): player_time[userid] = 999 def player_death(event_var): global player_time global player_prop userid = event_var['userid'] (x, y, z) = es.getplayerlocation(userid) new_z = z + 10 es.server.queuecmd('es_prop_dynamic_create %s extras/money/info_speech'%userid) gamethread.delayed(0.01, setprop, args=(userid, x, y, new_z)) gamethread.delayedname(0.2, 'cashadd_%s'%userid, cashadd, args=(x, y, new_z, userid)) es.ServerVar('cash_gets0rz').set(0) player_time[userid] = 0 def setprop(userid, x, y, new_z): player_prop[userid] = es.ServerVar('eventscripts_lastgive') gamethread.delayed(0.05, es.server.queuecmd, 'est_entteleport %s %s %s %s'%(player_prop[userid], x, y, new_z)) def cashadd(x, y, new_z, userid): global player_time if player_time[userid] <= money_time: player_time[userid] += 1 gamethread.delayedname(1, 'cashadd_%s'%userid, cashadd, args=(x, y, new_z, userid)) es.server.queuecmd('nearcoord cash_gets0rz #alive %s %s %s %s %s %s "es playerset cashadd server_var(cash_gets0rz) %s;playerset cashadd %s -%s"'%(x, y, new_z, money_range, money_range, money_range, money_per_second, userid, money_per_second)) elif player_time[userid] < 1000: for a in es.createentitylist(): if player_prop[userid] == a: es.server.queuecmd('es_remove %s'%player_prop[userid]) def addstuffs0rz(): for model in model_list: es.stringtable('downloadables', model_dir + model) for material in material_list: es.stringtable('downloadables', material_dir + material) for model2 in model_list: es.precachemodel(model_dir + model2) for material2 in material_list: es.precachemodel(material_dir + material2) def es_map_start(event_var): addstuffs0rz()