"""python 3.9 | chatcmd for a beutiful game - BombSquad OwO""" # modded by IM_NOT_PRANAV#7874 # biggggggg thankssssssssssssss to FireFighter1037 for helping everything # -*- coding: utf-8 -*- # ba_meta require api 7 from _ba import env,get_foreground_host_activity,get_foreground_host_session,get_game_roster, get_chat_messages,set_party_icon_always_visible, chatmessage as cmsg, screenmessage as smsg import ba #our prefix that what we starts cmds with px='/' #main class class _cmds: def _process_cmd(): set_party_icon_always_visible(True) messages=get_chat_messages() if len(messages)>1: lastmsg = messages[len(messages)-1] m=lastmsg.split(' ')[1] if m.startswith(px): return _cmds._handle() else: pass def _handle(): messages=get_chat_messages() if len(messages)>1: lastmsg = messages[len(messages)-1] m=lastmsg.split(' ')[1] #cmd n=lastmsg.split(' ')[2:] #aguments roster=get_game_roster() session=get_foreground_host_session() session_players=session.sessionplayers activity=get_foreground_host_activity() activity_players=activity.players if m == px: cmsg(px+'help for help') elif m == px+'help' : if n==[]: cmsg('===========================================') cmsg(f' {px}help 1 - for page 1 | simple commands') cmsg(f' {px}help 2 - for page 2 | all or number of list cmds') cmsg(f' {px}help 3 - for page 3 | Other useful cmds') cmsg('===========================================') elif n[0]=='1': cmsg('============================') cmsg(f' {px}help 1 page 1 |') cmsg(f' {px}help 1 page 2 |') cmsg('============================') if n[1] in [ 'page' , 'Page' , ]: if n[2]=='1': cmsg('============== Help 1, Page 1 ==============') cmsg(f' your command prefix is or all commands starts with - {px}') cmsg(f' {px}list or {px}l -- to see ids of players and execute commands') cmsg(f' {px}uniqeid or {px}id -- to see accountid/uniqeid of player') cmsg(f' {px}quit or {px}restart -- to restart the game') cmsg(f' {px}mute/unmute -- to mute chat for everyone in your game') elif n[2]=='2': cmsg('============== Help 1, Page 2 ==============') cmsg(f' {px}pause -- to pause everyone in your game') cmsg(f' {px}nv or {px}night -- to make night in your game') cmsg(f' {px}dv or {px}day -- to make night in your game') cmsg(f' {px}camera_mode -- to rotate camera ,repat to off') cmsg('===========================================') elif n[0]=='2': cmsg('============================') cmsg(f' {px}help 2 page 1 |') cmsg(f' {px}help 2 page 2 |') cmsg(f' {px}help 2 page 3 |') cmsg('============================') if n[1] in [ 'page' , 'Page' ]: if n[2] == '1': cmsg('============== Help 2 Page 1 ==============') cmsg(f' {px}kill all or {px}kill number of list | kills the player') cmsg(f' {px}heal all or {px}heal number of list | heals the players') cmsg(f' {px}freeze all or {px}freeze number of list | freeze the player') cmsg(f' {px}unfreeze/thaw all or {px}unfreeze/thaw number of list | unfreeze the player') cmsg(f' {px}gloves all or {px}gloves number of list | give gloves to player') cmsg('============================') elif n[2] == '2': cmsg('============== Help 2 Page 2 ==============') cmsg(f' {px}shield all or {px}shield number of list | give shield the player') cmsg(f' {px}fall all or {px}fall number of list | teleport in down and fall up the player') cmsg(f' {px}curse all or {px}curse number of list | curse the player') cmsg(f' {px}creepy all or {px}creepy number of list | make creepy actor of player') cmsg(f' {px}inv all or {px}inv number of list | makes invisible player') cmsg(f' {px}celebrate all or {px}celebrate number of list | celebrate action to the player') cmsg('============================') elif n[2] == '3': cmsg('============== Help 2 Page 3 ==============') cmsg(f' {px}gm all or {px}gm number of list | give bs gods like powers to player') cmsg(f' {px}sp all or {px}sp number of list | give superrrrrrr damages when punch to player') cmsg(f' {px}sleep all or {px}sleep number of list | sleep up the player') cmsg(f' {px}fly all or {px}fly number of list | fly up the player ') cmsg(f' {px}hug number of list | hugup the player') cmsg('============================') elif n[0]=='3': cmsg('============================') cmsg(f" {px}d_bomb bombType | changes default bomb | do {px}d_bomb help for bomb names ") cmsg(f' {px}dbc (number of bombs) | changes default count of player') cmsg('============================') elif m in [ px+'list' , px+'l' , px+'clientids' , px+'ids' , px+'playerids' ]: cmsg('======= Indexs ======') for i in session_players: cmsg(i.getname()+' --> '+str(session_players.index(i))+'\n') if not roster ==[]: for i in roster: cmsg(f'======For {px}kick only======') cmsg(str(i['players'][0]['nam_full'])+' - '+str(i['client_id'])) elif m in [ px+'uniqeid' , px+'id' , px+'pb-id' , px+'pb' , px+'accountid' ]: if n==[]: cmsg(f'use : {px}uniqeid number of list') else: try: id=session_players[int(n[0])] cmsg(id.getname()+"'s accountid is "+id.get_v1_account_id()) except: cmsg('could not found player') elif m in [ px+'quit' , px+'restart' ]: ba.quit() elif m in [ px+'mute' , px+'mutechat' ]: cfg=ba.app.config cfg['Chat Muted']=True cfg.apply_and_commit() cmsg('muted') smsg(f'chat muted use {px}unmute and click on send to unmute') elif m in [ px+'unmute' , px+'unmutechat' ]: cfg=ba.app.config cfg['Chat Muted']=False cfg.apply_and_commit() cmsg('un_muted') smsg('chat un_muted') elif m in [ px+'end' , px+'next' ]: if n==[]: try: activity.end_game() cmsg('Game ended Hope you scored great') except: cmsg('Game already ended') elif m in [ px+'dv' , px+'day' ]: if activity.globalsnode.tint==(1.0,1.0,1.0): cmsg(f'alwardy {px}dv is on ,do {px}nv for night') else: activity.globalsnode.tint=(1.0,1.0,1.0) cmsg('day mode on!') elif m in [ px+'nv' , px+'night' ]: if activity.globalsnode.tint==(0.5, 0.7, 1.0): cmsg(f'alwardy {px}nv is on ,do {px}dv for day') else: activity.globalsnode.tint=(0.5, 0.7, 1.0) cmsg('night mode on!') elif m in [ px+'sm' , px+'slow' , px+'slowmo' ]: if n==[]: if not activity.globalsnode.slow_motion: activity.globalsnode.slow_motion=True cmsg('Game in Epic Mode Now') else: activity.globalsnode.slow_motion=False cmsg('Game in normal mode now ') elif m in [ px+'pause' , px+'pausegame' ]: if n == []: if not activity.globalsnode.paused: activity.globalsnode.paused=True cmsg('Game Paused') else: activity.globalsnode.paused=False cmsg('Game un paused') elif m in [ px+'cameraMode', px+'camera_mode' , px+'rotate_camera' ]: if n == []: if not activity.globalsnode.camera_mode == 'rotate': activity.globalsnode.camera_mode = 'rotate' cmsg('camera mode is rotate now') else: activity.globalsnode.camera_mode = 'follow' cmsg('camera mode is normal now') elif m in [ px+'remove' , px+'rm' ]: if n == []: cmsg(f'{px}remove all or {px}remove number in list') elif n[0] == 'all': for i in session_players: i.remove_from_game() cmsg('Removed All') else: try: r=session_players[int(n[0])] r.remove_from_game() cmsg('Removed') #cant use getname() activity alwrady finish except: cmsg('could not found player') elif m in [ px+'inv' , px+'invisible' ]: if n==[]: cmsg(f'help : {px}inv all or {px}inv number of list') elif n[0]=='all': for i in activity_players: body=i.actor.node if not body.torso_model==None: body.head_model=None body.torso_model=None body.upper_arm_model=None body.forearm_model=None body.pelvis_model=None body.hand_model=None body.toes_model=None body.upper_leg_model=None body.lower_leg_model=None body.style='cyborg' cmsg('All invisible now Dont get cought') else: cmsg('alwardy invisible') else: body=activity_players[int(n[0])].actor.node is_name=session_players[int(n[0])].getname() if not body.torso_model==None: body.head_model=None body.torso_model=None body.upper_arm_model=None body.forearm_model=None body.pelvis_model=None body.hand_model=None body.toes_model=None body.upper_leg_model=None body.lower_leg_model=None body.style='cyborg' cmsg(is_name+' using invisiblelity ') else: cmsg('alwardy invisible') elif m in [ px+'hl' , px+'headless' ]: if n==[]: cmsg(f'help : {px}spaz all or {px}spaz number of list') elif n[0]=='all': for i in activity_players: body=i.actor.node if not body.head_model==None: body.head_model=None body.style='cyborg' cmsg('headless ? xD') else: cmsg('alwardy headless are you really headless?') else: body=activity_players[int(n[0])].actor.node is_name=session_players[int(n[0])].getname() if not body.head_model==None: body.head_model=None body.style='cyborg' cmsg(is_name+'is headless now xD') else: cmsg('alwardy headless are you really headless?') elif m in [ px+'creepy' , px+'creep' ]: if n==[]: cmsg(f'use: {px}creepy all or {px}creepy number of list') elif n[0]=='all': for i in activity_players: body=i.actor.node body.head_model=None body.handlemessage(ba.PowerupMessage(poweruptype='punch')) body.handlemessage(ba.PowerupMessage(poweruptype='shield')) cmsg('dont creep out childs all will be scared') else: try: body=activity_players[int(n[0])].actor.node body.head_model=None body.handlemessage(ba.PowerupMessage(poweruptype='punch')) body.handlemessage(ba.PowerupMessage(poweruptype='shield')) cmsg('dont creep out childs all will be scared') except: cmsg('could not found player to make') elif m in [ px+'kill' , px+'die' ]: if n == []: cmsg(f'Use : {px}kill all or {px}kill number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.DieMessage()) cmsg('Killed all') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.DieMessage()) cmsg('Killed '+is_name) elif m in [ px+'heal' , px+'heath' ]: if n == []: cmsg(f'Use: {px}heal all or {px}heal number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.PowerupMessage(poweruptype='health')) cmsg('Heald all') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.PowerupMessage(poweruptype='health')) cmsg('Heald '+is_name) elif m in [ px+'curse' , px+'cur' ]: if n == []: cmsg(f'Use: {px}curse all or {px}curse number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.PowerupMessage(poweruptype='curse')) cmsg('Cursed all') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.PowerupMessage(poweruptype='curse')) cmsg('Cursed '+is_name) elif m in [ px+'sleep' ]: if n == []: cmsg(f'Use: {px}sleep all or {px}sleep number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage('knockout', 8000) cmsg('Sleep all its Night :)') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage('knockout', 8000) cmsg(is_name+' sleeped now') elif m in [ px+'sp' , px+'superpunch' ]: if n == []: cmsg(f'Use : {px}sp/superpunch all or {px}sp/superpunch number of list') elif n[0]=='all': for i in activity_players: if not i.actor._punch_power_scale==15: i.actor._punch_power_scale=15 i.actor._punch_cooldown=0 cmsg('Everyone enjoy your Super punches') else: i.actor._punch_power_scale=1.2 i.actor._punch_cooldown=400 cmsg('Super punches off now') else: try: if not activity_players[int(n[0])].actor._punch_power_scale==15: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor._punch_power_scale=15 activity_players[int(n[0])].actor._punch_cooldown=0 cmsg(is_name+' using super punches get away from him') else: activity_players[int(n[0])].actor._punch_power_scale=1.2 activity_players[int(n[0])].actor._punch_cooldown=400 cmsg(':( ') except: pass elif m in [ px+'gloves' , px+'punch' ]: if n == []: cmsg(f'Use: {px}gloves all or {px}gloves number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.PowerupMessage(poweruptype='punch')) cmsg('Free Gloves enjoy all') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.PowerupMessage(poweruptype='punch')) cmsg(is_name+' using gloves') elif m in [ px+'shield' , px+'protect' ]: if n == []: cmsg(f'Use: {px}shield all or {px}shield number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.PowerupMessage(poweruptype='shield')) cmsg('Everyone enjoy free shield :)') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.PowerupMessage(poweruptype='shield')) cmsg(is_name+' using shield') elif m in [ px+'freeze' , px+'ice' ]: if n == []: cmsg(f'Use: {px}freeze all or {px}freeze number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.FreezeMessage()) cmsg('Freezed all') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.FreezeMessage()) cmsg('Un freezed '+is_name) elif m in [ px+'unfreeze' , px+'thaw' ]: if n == []: cmsg(f'Use: {px}unfreeze/thaw all or {px}unfreeze/thaw number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.ThawMessage()) cmsg('Un freezed all ') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.ThawMessage()) cmsg('Un freezed '+is_name) elif m in [ px+'fall' ]: if n == []: cmsg(f'Use: {px}fall all or {px}fall number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.StandMessage()) cmsg('Felt everyone') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.StandMessage()) cmsg(is_name+' got felt') elif m in [ px+'celebrate' , px+'celeb' ]: if n == []: cmsg(f'Use: {px}celebrate all or {px}celebrate number of list') elif n[0]=='all': for i in activity_players: i.actor.node.handlemessage(ba.CelebrateMessage()) cmsg('Celebrate all :)') else: is_name=session_players[int(n[0])].getname() activity_players[int(n[0])].actor.node.handlemessage(ba.CelebrateMessage()) cmsg(is_name+' is celebrating bt why?') elif m in [ px+'fly' ]: if n==[]: cmsg(f'Use: {px}fly all or {px}fly number of list') elif n[0]=='all': for i in activity_players: if not i.actor.node.fly==True: i.actor.node.fly=True cmsg('fly all dont go out ok') else: i.actor.node.fly=False cmsg('flying mode off') else: try: is_name=session_players[int(n[0])].getname() if not activity_players[int(n[0])].actor.node.fly==True: activity_players[int(n[0])].actor.node.fly=True cmsg(is_name+' is flying') else: activity_players[int(n[0])].actor.node.fly=False cmsg('fly off :(') except: cmsg('player not found') pass elif m in [ px+'gm' , px+'godmode' ]: if n==[]: cmsg(f'Use: {px}gm all or {px}gm number of list') elif n[0]=='all': for i in activity_players: if not i.actor.node.hockey==True: i.actor.node.hockey=True i.actor.node.invincible=True i.actor._punch_power_scale=7 cmsg('Gmed all ') else: i.actor.node.hockey=False i.actor.node.invincible=False i.actor._punch_power_scale=1.2 cmsg('Un gmed all') else: try: is_name=session_players[int(n[0])].getname() if not activity_players[int(n[0])].actor.node.hockey==True: activity_players[int(n[0])].actor.node.hockey=True activity_players[int(n[0])].actor.node.invincible=True activity_players[int(n[0])].actor._punch_power_scale=7 cmsg('Gmed '+is_name) else: activity_players[int(n[0])].actor.node.hockey=False activity_players[int(n[0])].actor.node.invincible=False activity_players[int(n[0])].actor._punch_power_scale=1.2 cmsg('un gmed '+is_name) except: cmsg('could not found player') elif m in [ px+'d_bomb', px+'default_bomb' ]: if n == []: cmsg(f'Use: {px}d_bomb/default_bomb all or {px}d_bomb number of list ,type {px}d_bomb help for help') elif n[0]=='help': cmsg("bombtypes - ['ice', 'impact', 'land_mine', 'normal', 'sticky','tnt']") elif n[0] in [ 'ice' , 'impact', 'land_mine' , 'normal' , 'sticky' , 'tnt']: for i in activity_players: i.actor.bomb_type=n[0] cmsg('default bomb type - '+str(n[0])+' now') else: cmsg('unkwon bombtype , type {px}d_bomb help for help') elif m in [ px+'d_bomb_count', px+'default_bomb_count' , px+'dbc' ]: if n == []: cmsg(f'Use: {px}d_bomb_count/default_bomb/dbc all or {px}d_bomb_count/default_bomb_count/dbc number of list') else: try: for i in activity_players: i.actor.set_bomb_count(int(n[0])) cmsg('default bomb count is '+(str(n[0]))+' now') except: cmsg('Must use number to use') elif m in [ px+'credits' ]: if n==[]: cmsg(u'\U0001F95A created by Nazz \U0001F95A') cmsg(u'\U0001F95A Nazz are past/present/future \U0001F95A') cmsg(u'\U0001F95A everything is Nazz \U0001F95A') # ba.timer(0.05, _update, repeat=True) def same(): ba.timer(0.5, _cmds._process_cmd, True) # ba_meta export plugin class _enableee(ba.Plugin): same()