首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对NPC数量的限制

对NPC数量的限制
EN

Stack Overflow用户
提问于 2022-02-09 04:14:31
回答 1查看 66关注 0票数 0

这样的想法,我甚至没有任何想法,如何做好它。一般的想法是:比如说,舞台上有三个NPC(有条件的),还有一个建筑(有条件的)。每个全国人大都有自己的任务,但我不知道如何把一个没有任务的全国人大派到大楼里去工作,而不是同时派几个。也就是说,每个全国人大都有工作状态,也有一个状态0,这意味着全国人民代表大会不忙,可能有几个这样的“免费”状态,如果一个人被分配了工作状态--去大楼,那么每个有这个身份的人都会去,但是我们怎么能保证只有一个免费的全国人民代表大会呢?我知道这个问题很难理解,也很可怕,但也许有人会理解.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-10 01:55:43

所以,首先,我做了代码:

文件WorkingPlace:

代码语言:javascript
复制
public static bool SignalFreeNPCPoint = false;
public static int WorkingPlaceNPC = 0;
public void ProductBoardNPC()
{
    SignalFreeNPCPoint = true;
    WorkingPlaceNPC += 1;
}
public void ProductBoard_Stop()
{
    WorkingPlaceNPC -= 1;
    SignalFreeNPCPoint = true;
}

这个"ProductBoardNPC()“和"ProductBoard_Stop()”方法是for按钮。

文件NPCSctipt:

代码语言:javascript
复制
public List<GameObject> ListGM = new List<GameObject>(); 
public int TaskNumber = 0;
void Update()
{
    TaskManager();
    LogicNPC();
}
private void TaskManager()
{
    switch (TaskNumber)
    {
        case 0:
            //You code
            break;
        case 1:
            ListGM.Remove(gameObject);
            break;
        case 2:
            ListGM.Remove(gameObject);
            break;
        case 3:
            ListGM.Remove(gameObject);
            break;
        case 4:
            ListGM.Remove(gameObject);
            break;
    }
}
private void LogicNPC()
{
    if (WorkingPlace.SignalFreeNPCPoint == true)
    {
        if (TaskNumber == 0 & WorkingPlace.WorkingPlaceNPC == 1)
        {
            ListGM.Add(gameObject);
            TaskNumber = 4;
        }
        if (TaskNumber == 4 & WorkingPlace.WorkingPlaceNPC == 0)
        {
            TaskNumber = 0;
        }
        WorkingPlace.SignalFreeNPCPoint = false;
    }
}

代码的工作方式:当单击按钮时,搜索状态为0的NPC,然后将具有此状态的上一个NPC输入到数组中,然后给它不同的状态来执行“工作”,然后从数组中移除它,以便为另一个NPC腾出空间。在这种情况下,数组是一个缓冲区,只是必需的。如果你有比我的更好的想法,我会很乐意听)实现是一个干净的自行车由拐杖,但它的工作完美。是的,关于FPS的提取,它似乎没有加载太多的系统,如果有提取,然后写什么来修复。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71043934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档