3DMGAME 3DM首页 新闻中心 前瞻 | 评测 游戏库 热门 | 最新 攻略中心 攻略 | 秘籍 下载中心 游戏 | 汉化 购买正版 论坛

注册 登录

QQ登录

只需一步,快速开始

查看: 2968|回复: 3
打印 上一主题 下一主题

[原创] 如何完美地赶走竞争对手高管

[复制链接]

11

主题

55

帖子

86

积分

初级玩家

Rank: 2

贡献度
6
金元
621
积分
86
精华
0
注册时间
2021-10-1
跳转到指定楼层
主题
发表于 2021-11-21 17:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 lowieliang 于 2021-11-23 09:40 编辑

    竞争对手高管来访问了!麻烦也随之而来
    先说明下各个高管的行为
      霍里史迪克斯公司    乱扔垃圾
      巨无霸集团        破坏机器
      球体基金会        洗脑病人和员工,导致满意度迅速归零
      低端医疗科技      来找灵感的,基本不会构成破坏



    前两天遇到球体基金会的来访问,说是下一步是去全科诊疗室,可她就在前台附近打转,路过的很多病人都被洗脑了,还拿她没办法。
    网上找了下解决方案,都是用封堵大法,用贩卖机啥的把她堵住不能动。
    我分析了下代码,最好在她去前台签到之前堵住,300秒之后超时,她就会离开医院。
    这就要求手速和运气两者缺一不可,一旦失败就两个后果,要么堵不住,要么堵到天荒地老她也不会离开。


    以下是我的解决方案
    打开 dnSpy 修改 Assembly-CSharp.dll 这个文件。传送门 https://bbs.3dmgame.com/thread-5782890-1-1.html
    在 TH20.ChallengeVIP 类中添加一个新的函数
    protected override void UpdateChallenge(float timeDelta)
    {
        base.UpdateChallenge(timeDelta);
        if(this._challengeState == Challenge.ChallengeState.InProgress && this._vipVisitor != null)
        {
            VIPChallengeConfig config = base.GetConfig<VIPChallengeConfig>();
            if (config.ChallengeDisplayName.CompareTo("Rival Boss") == 0)
            {
                if(this._vipVisitor.GetComponent<CharacterCheckInComponent>() == null)
                {
                    this._vipVisitor.LeaveHospital(Character.ReasonForLeavingHospital.None);
                }
            }
        }
    }



    修改 TH20.VIPComponent 类里的两个函数
    public string GetGUIActionText()
    {
        Visitor owner = base.GetOwner<Visitor>();
        if (owner == null)
        {
            return string.Empty;
        }
        if (owner.CurrentMode == Visitor.Mode.LeavingHospital)    // 红色部分代码是从下面搬动上来的
        {
            return ScriptLocalization.HospitalEvent.VIPLeaving_CS;
        }

        if (this.TargetRoom != null)
        {
            return ScriptLocalization.HospitalEvent.VIPVisitingRoom_CS.Replace("{[ROOM]}", this.TargetRoom.GetRoomName());
        }
        if (owner.GetComponent<CharacterCheckInComponent>() != null)
        {
            return ScriptLocalization.HospitalEvent.VIPArriving_CS;
        }
        return ScriptLocalization.HospitalEvent.VIPTouring_CS;
    }


    public Sprite GetStatusSprite()
    {
        Visitor owner = base.GetOwner<Visitor>();
        if (owner == null)
        {
            return null;
        }
        if (owner.CurrentMode == Visitor.Mode.LeavingHospital)        {
            return owner.Definition.LeavingSprite;
        }

        if (this.TargetRoom != null)
        {
            return this.TargetRoom.Definition._icon;
        }
        return owner.Definition.ArrivalSprite;
    }



    经测试,达到的效果是竞争对手高管一下飞机或者出租车,立刻开始离开医院








回复

使用道具 举报

498

主题

5万

帖子

13万

积分

游戏终结者

Rank: 14Rank: 14Rank: 14Rank: 14

贡献度
4909
金元
1163583
积分
135994
精华
0
注册时间
2009-11-23

龙年勋章3DMer(永久)

舒服的沙发
发表于 2021-11-22 09:46 | 只看该作者
遇到困难不要怂,你干脆改成直接通关,都不用浪费时间玩了
回复 支持 1 反对 0

使用道具 举报

71

主题

808

帖子

6601

积分

游戏精英

Rank: 8Rank: 8

贡献度
394
金元
50247
积分
6601
精华
0
注册时间
2014-12-3

龙年勋章

硬硬的板凳
发表于 2021-12-16 11:40 | 只看该作者
xinna201 发表于 2021-11-22 09:46
遇到困难不要怂,你干脆改成直接通关,都不用浪费时间玩了

你这种社会渣滓也就配在这酸言酸语了 现实中就是个被所有人孤立的垃圾玩意
回复 支持 反对

使用道具 举报

31

主题

591

帖子

883

积分

超级玩家

Rank: 5Rank: 5

贡献度
23
金元
7913
积分
883
精华
0
注册时间
2012-3-8
冰凉的地板
发表于 2021-12-22 20:43 | 只看该作者
感谢楼主的分享,虽然我遇到这些NPC完全不管他们,洗脑走了就走了,懒得动弹,哈哈
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|3DMGAME ( 京ICP备14006952号-1  沪公网安备 31011202006753号

GMT+8, 2026-4-1 16:02 , Processed in 0.029230 second(s), 16 queries , Memcached On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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