Beispiel #1
0
def msg_server(msg):
    """Sends a message to all players on the server."""
    if 243 < len(msg):
        mm.warn("Truncating long message '%s'" % msg)
        msg = msg[0:243]
    host.sgl_sendTextMessage(0, MsgChannels.ServerMessage.id, MsgType.Server,
                             msg, 0)
Beispiel #2
0
def changedWeaponMisc(player, weapon):
	global NO_C4, NO_CLAYMORE, NO_MOUNTED_MGS, NO_TOW_MISSILE, PUNISH_METHOD, WARNING_LVL0, WARNING_LVL1
	if NO_CLAYMORE and weapon.templateName == "usmin_claymore" or NO_C4 and weapon.templateName == "c4_explosives" or NO_MOUNTED_MGS and weapon.templateName == "rulmg_rpk74_stationary" or NO_TOW_MISSILE and weapon.templateName == "ats_hj8_Launcher":
		if not PUNISH_METHOD:
			host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL0)  % (player.getName()), 0) 
		else:
			player.getDefaultVehicle().setDamage(0)
			host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL1)  % (player.getName()), 0)
def onPlayerNameValidated(realNick, oldNick, realPID, oldPID, player):
	if realNick != oldNick:
		message = "Player: %s, real name %s, was kicked and banned for using Name Hacks" % (oldNick, realNick)
	elif realPID != oldPID:
		message = "Player: %s tried to use wrong PlayerID %d (real PID %d); kicked and banned for using PID Hacks" % (oldNick, oldPID, realPID)
	else:
		return
	host.rcon_invoke("admin.banPlayer %d %d" % (player.index, BANTIME))
	host.sgl_sendTextMessage(0, 12, 1, message, 0)
Beispiel #4
0
def msg_player( playerid, msg ):
	"""Sends a message to a player on the server."""
	# TODO: update to send the message to the player once this is fixed
	# in the server code
	if 243 < len( msg ):
		mm.warn( "Truncating long message '%s'" % msg )
		msg = msg[0:243]
	# BF2142 v1.10 only works sending messages to player 0 :(
	# so reverting to server send
	host.sgl_sendTextMessage( 0, MsgChannels.ServerMessage.id, MsgType.Server, msg, 0 )
def onPlayerNameValidated(realNick, oldNick, realPID, oldPID, player):
    if realNick != oldNick:
        message = "Player: %s, real name %s, was kicked and banned for using Name Hacks" % (
            oldNick, realNick)
    elif realPID != oldPID:
        message = "Player: %s tried to use wrong PlayerID %d (real PID %d); kicked and banned for using PID Hacks" % (
            oldNick, oldPID, realPID)
    else:
        return
    host.rcon_invoke("admin.banPlayer %d %d" % (player.index, BANTIME))
    host.sgl_sendTextMessage(0, 12, 1, message, 0)
def changedWeaponMisc(player, weapon):
    global NO_C4, NO_CLAYMORE, NO_MOUNTED_MGS, NO_TOW_MISSILE, PUNISH_METHOD, WARNING_LVL0, WARNING_LVL1
    if ((NO_CLAYMORE and weapon.templateName == "usmin_claymore")
            or (NO_C4 and weapon.templateName == "c4_explosives") or
        (NO_MOUNTED_MGS and weapon.templateName == "rulmg_rpk74_stationary")
            or (NO_TOW_MISSILE and weapon.templateName == "ats_hj8_Launcher")):
        if not (PUNISH_METHOD):
            host.sgl_sendTextMessage(0, 12, 1,
                                     str(WARNING_LVL0) % (player.getName()), 0)
        else:
            player.getDefaultVehicle().setDamage(0)
            host.sgl_sendTextMessage(0, 12, 1,
                                     str(WARNING_LVL1) % (player.getName()), 0)
Beispiel #7
0
def onRestart(data):
	global TIME_TO_RESTART
	global temp_time
	global timer
	global inCounting
	
	if (temp_time>0):
		host.sgl_sendTextMessage( 0, 12, 1, "... %s "  % (temp_time), 0)
		temp_time = temp_time - 1
	else:
		timer.destroy()
		timer = None
		temp_time = TIME_TO_RESTART
		inCounting = False
		host.rcon_invoke("admin.restartMap")
Beispiel #8
0
def onRestart(data):
    global TIME_TO_RESTART
    global temp_time
    global timer
    global inCounting

    if (temp_time > 0):
        host.sgl_sendTextMessage(0, 12, 1, "... %s " % (temp_time), 0)
        temp_time = temp_time - 1
    else:
        timer.destroy()
        timer = None
        temp_time = TIME_TO_RESTART
        inCounting = False
        host.rcon_invoke("admin.restartMap")
def KickerSystem(player):
    global playerKickList, HOW_MANY_KILLS_TO_KICK, RESTRICTED_WEAPON_KICK_MSG, RESTRICTED_WEAPON_KICK_REASON, WARNING_AFTER_FRAG, RESTRICTED_WEAPON_KICK_IN_MINUTES
    playerId = player.getProfileId()
    t = 0
    for temp_player in playerKickList:
        if (int(playerId) == int(temp_player[0])):
            temp_player[1] += 1
            if (temp_player[1] >= HOW_MANY_KILLS_TO_KICK):
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(RESTRICTED_WEAPON_KICK_MSG) % (player.getName()), 0)
                host.rcon_invoke("pb_sv_kick \"" + str(player.getName()) +
                                 "\" " +
                                 str(RESTRICTED_WEAPON_KICK_IN_MINUTES) +
                                 " \"" + str(RESTRICTED_WEAPON_KICK_REASON) +
                                 "\"")
                del playerKickList[playerKickList.index(
                    [playerId, temp_player[1]])]
                t = 1

            else:
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(WARNING_AFTER_FRAG) % (player.getName()), 0)
                t = 1

    if not (t):
        playerKickList.append([playerId, 1])
        host.sgl_sendTextMessage(0, 12, 1,
                                 str(WARNING_AFTER_FRAG) % (player.getName()),
                                 0)
        t = 0
Beispiel #10
0
def changedWeapon(WeaponList, player, weapon, method):
	global PUNISH_METHOD, WARNING_LVL0, WARNING_LVL1
	if not method:
		if str(weapon.templateName) in WeaponList:
			if not PUNISH_METHOD:
				host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL0)  % (player.getName()), 0)
			else:
				player.getDefaultVehicle().setDamage(0)
				host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL1)  % (player.getName()), 0)
	else:
		if str(weapon.templateName) not in WeaponList:
			if not PUNISH_METHOD:
				host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL0)  % (player.getName()), 0)
			else:
				player.getDefaultVehicle().setDamage(0)
				host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_LVL1)  % (player.getName()), 0)
def changedWeapon(WeaponList, player, weapon, method):
    global PUNISH_METHOD, WARNING_LVL0, WARNING_LVL1
    if not (method):
        if (str(weapon.templateName) in WeaponList):
            if not (PUNISH_METHOD):
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(WARNING_LVL0) % (player.getName()), 0)
            else:
                player.getDefaultVehicle().setDamage(0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(WARNING_LVL1) % (player.getName()), 0)
    else:
        if not (str(weapon.templateName) in WeaponList):
            if not (PUNISH_METHOD):
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(WARNING_LVL0) % (player.getName()), 0)
            else:
                player.getDefaultVehicle().setDamage(0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(WARNING_LVL1) % (player.getName()), 0)
Beispiel #12
0
def KickerSystem(player):
	global playerKickList, HOW_MANY_KILLS_TO_KICK, RESTRICTED_WEAPON_KICK_MSG, RESTRICTED_WEAPON_KICK_REASON, WARNING_AFTER_FRAG, RESTRICTED_WEAPON_KICK_IN_MINUTES
	playerId = player.getProfileId()
	t = 0
	for temp_player in playerKickList:
		if int(playerId) == int(temp_player[0]):
			temp_player[1]+=1;
			if temp_player[1] >= HOW_MANY_KILLS_TO_KICK:
				host.sgl_sendTextMessage( 0, 12, 1, str(RESTRICTED_WEAPON_KICK_MSG)  % (player.getName()), 0)
				host.rcon_invoke("pb_sv_kick \""+str(player.getName())+"\" "+str(RESTRICTED_WEAPON_KICK_IN_MINUTES)+" \""+str(RESTRICTED_WEAPON_KICK_REASON)+"\"")
				playerKickList.remove([playerId,temp_player[1]])
				t = 1
				
			else:
				host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_AFTER_FRAG)  % (player.getName()), 0)
				t = 1
			
	if not t: 
		playerKickList.append([playerId, 1])
		host.sgl_sendTextMessage( 0, 12, 1, str(WARNING_AFTER_FRAG)  % (player.getName()), 0)
		t = 0
Beispiel #13
0
	def sendServerMessage(self, playerId, message): return host.sgl_sendTextMessage(playerId, 10, 1, message, 0)
#	def sendMessage2Player(self, playerId, channel, type, message): return host.sgl_sendTextMessage(playerId, channel, type, message, 0)
	
	def getTicketState(self, team): return host.sgl_getParam('ticketState', team, 0)
Beispiel #14
0
def onCommander(teamid, oldCommanderPlayerObject, player):
		global OLDSCHOOL_LEVEL
		if OLDSCHOOL_LEVEL != 0:	
			global ANTICOMMANDER
			if ANTICOMMANDER: #yeap. Double check. Unfortunately DICE forgot to implement host.UNregisterHandler... And this is the only way to disable anticommander (and other) 'on the fly' by using remote rcon command. Sorry :P
				global COMMANDER_AUTOKICK
				if COMMANDER_AUTOKICK == 1:
					global COMMANDER_KICK_MSG, COMMANDER_KICK_REASON, COMMANDER_KICK_TIME_IN_MINUTES
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_KICK_MSG)  % (player.getName()), 0)
					host.rcon_invoke("pb_sv_kick \""+str(player.getName())+"\" "+str(COMMANDER_KICK_TIME_IN_MINUTES)+" \""+str(COMMANDER_KICK_REASON)+"\"")
				else:
					global COMMANDER_MSG
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_MSG)  % (player.getName()), 0)
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_MSG)  % (player.getName()), 0)
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_MSG)  % (player.getName()), 0)
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_MSG)  % (player.getName()), 0)
					host.sgl_sendTextMessage( 0, 12, 1, str(COMMANDER_MSG)  % (player.getName()), 0)
Beispiel #15
0
	def sendServerMessage(self, playerId, message): return host.sgl_sendTextMessage(playerId, 10, 1, message)
	
	def getTicketState(self, team): return host.sgl_getParam('ticketState', team, 0)
Beispiel #16
0
 def sendServerMessage(self, playerId, message):
     return host.sgl_sendTextMessage(playerId, 10, 1, message, 0)
Beispiel #17
0
	def sendServerMessage(self, playerId, message): return host.sgl_sendTextMessage(playerId, 10, 1, message, 0)
#	def sendMessage2Player(self, playerId, channel, type, message): return host.sgl_sendTextMessage(playerId, channel, type, message, 0)
	
	def getTicketState(self, team): return host.sgl_getParam('ticketState', team, 0)
def onCommander(teamid, oldCommanderPlayerObject, player):
    global OLDSCHOOL_LEVEL
    if (OLDSCHOOL_LEVEL != 0):
        global ANTICOMMANDER
        if (
                ANTICOMMANDER
        ):  #yeap. Double check. Unfortunately DICE forgot to implement host.UNregisterHandler... And this is the only way to disable anticommander (and other) 'on the fly' by using remote rcon command. Sorry :P
            global COMMANDER_AUTOKICK
            if (COMMANDER_AUTOKICK == 1):
                global COMMANDER_KICK_MSG, COMMANDER_KICK_REASON, COMMANDER_KICK_TIME_IN_MINUTES
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_KICK_MSG) % (player.getName()), 0)
                host.rcon_invoke("pb_sv_kick \"" + str(player.getName()) +
                                 "\" " + str(COMMANDER_KICK_TIME_IN_MINUTES) +
                                 " \"" + str(COMMANDER_KICK_REASON) + "\"")
            else:
                global COMMANDER_MSG
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_MSG) % (player.getName()), 0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_MSG) % (player.getName()), 0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_MSG) % (player.getName()), 0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_MSG) % (player.getName()), 0)
                host.sgl_sendTextMessage(
                    0, 12, 1,
                    str(COMMANDER_MSG) % (player.getName()), 0)
Beispiel #19
0
 def sendServerMessage(self, playerId, message):
     return host.sgl_sendTextMessage(playerId, 10, 1, message, 0)
Beispiel #20
0
 def warnPlayer(self, playerName, text, playerId=-1):
     msg = ("\n" * self.__ruleWarnNewlines) + playerName + ": " + text
     # TODO: Add timer for duration. Currently message is shown ~4 seconds
     host.sgl_sendTextMessage(0, 12, 4, msg, 0)
     if self.__showRuleWarnBlur and playerId > -1:
         host.sgl_sendGameLogicEvent(playerId, 13, 1)