骑马与砍杀中文站论坛

 找回密码
 注册(Register!)

QQ登录

只需一步,快速开始

搜索
购买CDKEY 小黑盒加速器
查看: 992|回复: 3

[功能与代码] 【骑砍2】简单给战场所有人加个描边

[复制链接]

30

主题

227

回帖

192

积分

见习骑士

Rank: 3

UID
2758789
第纳尔
2148
精华
0
互助
21
荣誉
1
贡献
0
魅力
201
注册时间
2016-7-18
鲜花(22) 鸡蛋(0)
发表于 2024-3-14 10:35:47 | 显示全部楼层 |阅读模式
本帖最后由 路过的罗格 于 2024-3-14 14:09 编辑

  直接调用原有的功能,方便夜战闭着眼睛扎人

POPO-screenshot-20240314-102344.png



  老样子写在继承了MissionLogic的类的OnMissionTick方法里,记着在方法外面写一个bool flagFor=false;用来记录功能的开关


(点击展开 / 收起)
  1.             if (flagFor && hasElapsed500Ms)//调用游戏内部的描边功能
  2.             {
  3.                 foreach (var agent1 in Mission.Agents)//遍历全部agent
  4.                 {
  5.                     if (agent1 != null)
  6.                     {
  7.                         if (Agent.Main != null && agent1.IsFriendOf(Agent.Main))//如果是玩家的友军
  8.                         {
  9.                             //效果有点差,不加友军得了
  10.                             //agent1.AgentVisuals.SetContourColor(new uint?(new Color(0f, 1f, 0f, 1f).ToUnsignedInteger()), true);//获取agent的视觉表现,并且设置描边以及颜色
  11.                         }
  12.                         else //同理处理敌军
  13.                         {
  14.                             if(!agent1.IsMount)//不给马加描边
  15.                             agent1.AgentVisuals.SetContourColor(new uint?(new Color(1f, 0f, 0f, 1f).ToUnsignedInteger()), true);//颜色用红色
  16.                         }
  17.                     }

  18.                 }
  19.             }
  20.             if (!flagFor)//不开的时候,清除一下描边
  21.             {
  22.                 foreach (var agent1 in Mission.Agents)//遍历全部agent
  23.                 {

  24.                         agent1.AgentVisuals.SetContourColor(null, true);
  25.                     
  26.                 }
  27.             }
复制代码

漏了点东西,单位被杀死的时候也清除一下描边,省的高亮一地尸体
  1.         public override void OnAgentRemoved(Agent affectedAgent, Agent affectorAgent, AgentState agentState, KillingBlow blow)
  2.         {
  3.             base.OnAgentRemoved(affectedAgent, affectorAgent, agentState, blow);

  4.             if (affectorAgent!=null)
  5.             {
  6.                 affectedAgent.AgentVisuals.SetContourColor(null, true);
  7.             }

  8.             
  9.         }
复制代码





评分

参与人数 1第纳尔 +20 互助 +1 魅力 +20 收起 理由
Aomine Daiki + 20 + 1 + 20 文章不错,继续努力!

查看全部评分

28

主题

4158

回帖

3131

积分

子爵[版主]

世纪风云制作组[程序]

圣殿骑士团[KT]
战团ID:Epig

中级术士

Rank: 7Rank: 7Rank: 7

UID
1706215
第纳尔
34958
精华
3
互助
157
荣誉
79
贡献
2005
魅力
207
注册时间
2013-12-8

骑砍中文站APP会员勋章原版正版勋章战团正版勋章火与剑正版勋章拿破仑正版勋章维京征服正版勋章汉匈决战正版勋章骑士美德之英勇勋章[杰出会员活跃勋章]骑士美德之仁慈勋章[杰出会员互助勋章]骑士美德之谦恭勋章[杰出会员财富勋章]骑士美德之公正勋章[杰出会员高级财富勋章]骑士美德之正义勋章[杰出会员荣誉勋章]骑士精神之文韬勋章杰出版主勋章骑士美德之奉献勋章骑士美德之高贵勋章骑砍中文站微博会员勋章骑砍中文站微信会员勋章骑友真人秀勋章汉匈决战荣誉用户勋章元老骑士勋章霸主正版勋章

鲜花(2039) 鸡蛋(904)
发表于 2024-3-15 09:42:14 | 显示全部楼层
这个功能比较适合框选做类全面战争之类的
童鞋们,欢迎来到骑马与砍杀学院,我是你们的科任老师,猪猪老师,由我来为童鞋们介绍以下课程:
1、人间五十年life50 2.0测试版
2、永恒世界4.5.5公测版
3、永恒世界网页端 UCP2.0
4、大逃杀1.0公测版
5、永恒世界4.5特别版
6、常见PY报错解决方案

30

主题

227

回帖

192

积分

见习骑士

Rank: 3

UID
2758789
第纳尔
2148
精华
0
互助
21
荣誉
1
贡献
0
魅力
201
注册时间
2016-7-18
鲜花(22) 鸡蛋(0)
 楼主| 发表于 2024-3-15 09:45:41 | 显示全部楼层
恶猪 发表于 2024-3-15 09:42
这个功能比较适合框选做类全面战争之类的

挺多地方都能用上,比如战争之风的施法,1代里我是插了一堆旗子来显示玩家施法的位置,要是有这种功能我直接给他高亮一下用来表示你的魔法可以影响到的单位是那些,更直观

0

主题

3

回帖

1

积分

平民

Rank: 1

UID
3634817
第纳尔
0
精华
0
互助
0
荣誉
0
贡献
0
魅力
0
注册时间
2024-3-16

骑砍中文站APP会员勋章

鲜花(0) 鸡蛋(0)
发表于 2024-3-16 15:27:54 来自手机 | 显示全部楼层
小子,你开透视是吧来自: iPhone客户端
您需要登录后才可以回帖 登录 | 注册(Register!)

本版积分规则

Archiver|手机版|小黑屋|骑马与砍杀中文站

GMT+8, 2024-12-27 12:50 , Processed in 0.128155 second(s), 23 queries , Gzip On, MemCached On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表