L4D&L4D2 玩家进入退出+玩家转队伍&SteamId&IP+国家+城市显示SQL版本 SP源码 2.4(2013-10-15更新)
本帖最后由 fenghf 于 2019-10-19 11:30 编辑{:3_153:}
爱改插件的,欢迎参考
玩家进入 + 玩家退出 + 玩家进入队伍提示 + 玩家SteamID + 玩家IP+国家显示
1.2
-增加显示 玩家SteamID 和 玩家IP
1.4
-增加玩家进入提示 SteamID 和 IP
1.6
-增加提示 国家,参考countrynick的几个参数
1.8
-增加提示 城市
-去掉局域网提示
2.2
-增加支持 #include <colors> 彩色字体
-增加SQL数据库 城市 显示(PS: 某人拜托添加的..其它不多说)
-增加 开启关闭转队提示 l4d_switchteamdenabled 0/1
-增加输入 !ip 在控制台查看自己信息
-PS: 某些错误提示使用 英文,是为了方便找错误的
-修复以前版本,玩家进入不能提示 steamID问题
2.4
-修复BUG
-开启关闭转队提示 l4d_switchteamdenabled 0/1 默认改为 1
1.8
**** Hidden Message *****
2.2 (更新数据库2013.10.13)
**** Hidden Message *****2.4 (更新数据库2013.10.13)
**** Hidden Message *****
数据库导入教程 http://bbs.3dmgame.com/forum.php ... 146&fromuid=2605961
部分代码,详情查看SP源码if(userTeam==L4D_TEAM_SPECTATOR && GeoipCountry(ClientIP, country, 45) && !IsFakeClient(userID))
{
CPrintToChatAll("{olive} %N {default}加入旁观{default}! {olive}%s \n {default}IP: {olive}%s{default}来自:{olive}%s %s", userID, SteamId, ClientIP, country, g_text);
PrintToServer(" %N 加入旁观! %sIP: %s来自:%s %s", userID, SteamId, ClientIP, country, g_text);
}
else if(userTeam==L4D_TEAM_SPECTATOR && !IsFakeClient(userID))
{
PrintToChatAll("\x04 %N \x01 加入旁观\x01 \x05%s \n \x04IP: \x05%s\x04来自:\x05局域网",userID, SteamId, ClientIP);
}
if(userTeam==L4D_TEAM_SURVIVOR && GeoipCountry(ClientIP, country, 45) && !IsFakeClient(userID))
{
CPrintToChatAll("{olive} %N {blue}加入幸存者{default}! {olive}%s \n {default}IP: {olive}%s{default}来自:{olive}%s %s", userID, SteamId, ClientIP, country, g_text);
PrintToServer(" %N 加入幸存者! %sIP: %s来自:%s %s", userID, SteamId, ClientIP, country, g_text);
}
else if(userTeam==L4D_TEAM_SURVIVOR && !IsFakeClient(userID))
{
PrintToChatAll("\x04 %N \x01 加入幸存者\x01 \x05%s \n \x04IP: \x05%s\x04来自:\x05局域网",userID, SteamId, ClientIP);
}
if(userTeam==L4D_TEAM_INFECTED && GeoipCountry(ClientIP, country, 45) && !IsFakeClient(userID))
{
CPrintToChatAll("{olive} %N {red}加入感染者{default}! {olive}%s \n {default}IP: {olive}%s{default}来自:{olive}%s %s", userID, SteamId, ClientIP, country, g_text);
PrintToServer(" %N 加入感染者! %sIP: %s来自:%s %s", userID, SteamId, ClientIP, country, g_text);
}
else if(userTeam==L4D_TEAM_INFECTED && !IsFakeClient(userID))
{
PrintToChatAll("\x04 %N \x01 加入感染者\x01 \x05%s \n \x04IP: \x05%s\x04来自:\x05局域网", userID, SteamId, ClientIP);
}http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
http://pan.baidu.com/s/1AA8CA 给力啊 大佬
mark!!!感谢!!!
哈哈哈
这个可以听呀谢谢
好帖留名 感谢,这么厉害不知道还能不能用了
66666666666666 xxfx xxfx
有点意思………… 希望还能用,参考参考 666666666666
ddddddddddddddd
非常需要,下来看看 数据库导入教程去哪里了 查看查看查看 aaaaaaaaaaaaaaa
6666666666666666666666666
lih 啊啊啊
66666666666666666666
laaaaaaaaaaaaaaaa
感谢分享:)
6666666666666
可以真不错:lol
:):):):):):):):):):):):):):):):)
本帖最后由 wyxls 于 2023-1-24 23:25 编辑
感谢原作者,由于原插件已经丢失sql数据导入教程,理论上把ipdata.sql放在addons\sourcemod\configs\sql-init-scripts\mysql里,游戏服务器执行初始化时就能插入ipdata表正常使用,但是这样太麻烦了
https://forums.alliedmods.net/showthread.php?t=311477
SourceMod在1.11.6703版本以后已经更新支持GeoipCity()函数,可以直接调用获取城市信息,所以将插件平台更新至1.11.6703以上即可
微调修改:
1. 插件信息修改,名称改为Welcomeinfo
2. 将SQL相关的源码删除精简,只调用GeoipCity()使城市信息获取正常工作
3. 将l4d_switchteamdenabled参数外置到cfg/WelcomeInfo.cfg,游戏内改变数值会实时生效并发送文本提示
4. 加入当前人类玩家幸存者总数统计,加入游戏、退出游戏都会提示
666666666666666666666666
谢谢分享啦
感谢分享
棒棒棒