如何在多个游戏对象上统一使用相同的脚本?

2024-02-16

我有一个脚本CoinFill这会形成一个径向进度条。

当 FillAmount = 1 时,我想将该特定图像重置为零。我希望能够将其用于多个GameObjects。问题是当第一次FillAmount=1,速度较快的便士,可以点击镍币,可能是50%填充,然后便士会重置为0。但是如果镍币为1,它不会自行重置,只有便士会重置休息。

Image of what I am trying to do: enter image description here

Code:

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class CoinFill : MonoBehaviour {

    public SavingsAccountManager sam;

    public float fillCoinSpeed;
    public Image coinFill;
    public float maxCoinFill = 100f;
    public float minCoinFill = 0f;
    public float currentCoinFill;


    // Use this for initialization
    void Start()
    {
        currentCoinFill = minCoinFill;
    }


    void Update()
    {
        if (currentCoinFill < maxCoinFill)
        {
            currentCoinFill += fillCoinSpeed * Time.deltaTime;
        }

        coinFill.fillAmount = currentCoinFill / maxCoinFill;
    }
 //Penny Button
    public void PennyPush()
    {
        if (coinFill.fillAmount == 1)
        {
           sam.savingsAccountAmount += .01f;
           sam.savingsAccountText.text = sam.savingsAccountAmount.ToString("f2");
           currentCoinFill = minCoinFill;
        }

    }

 //Nickle Button
    public void NicklePush()
    {
        if (coinFill.fillAmount == 1)
        {
            sam.savingsAccountAmount += .05f;
            sam.savingsAccountText.text = sam.savingsAccountAmount.ToString("f2");
            currentCoinFill = minCoinFill;
        }
    }
}

我不确定我是否需要与 Penny 或 Nickle 的父母一起做某事,或者我是否应该使用this或设置一些父项


假设你有三枚不同的便士,A B 和 C

1)所以确实在场景中创建了三便士..即,三个新的游戏对象并添加图形或其他内容。确保为每个游戏对象正确设置名称

2)看A。将脚本拖到 A 上。

3)查看脚本上的检查器变量槽实际上是ON A。

4) 将 A 从层次结构拖到 A 上的那些检查器变量槽上

也就是说,这完全是可以将项目“拖到其自身上”。换句话说,脚本中的变量将仅引用“该项目本身,A”

5)现在忘记A。只看B

6) 将脚本拖到 B 上。再次将 B“拖到自身上”以填充插槽

7) 现在 C. 再次将脚本拖到 C. 上,将 C“拖到自身上”以填充插槽

在脚本的顶部(在“唤醒”中)或其他地方add this

Debug.Log("这个特定脚本位于 " +gameObject.name);

跑步。请注意,您看到了其中三个。

您现在拥有三个带有独立脚本的独立对象!享受

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在多个游戏对象上统一使用相同的脚本? 的相关文章

  • 创建对话框/弹出窗口

    有这样的代码 bool b EditorUtility DisplayDialog Test Reset or continue Reset Continue if b ResetGame 但它仅在编辑器中有效 在游戏中无效 如何将 Edi
  • Unity Transform.LookAt 仅在一个轴上

    我一直在开发一款游戏 进展非常顺利 从这里得到了一些帮助 我再次需要它 所以我正在制作一个 2D 自上而下的射击游戏 我需要我的敌人看着玩家 显然敌人会在所有轴上旋转 因此是无敌的 或者看起来很奇怪 那么 如何让它只在Z轴上旋转呢 另外 如
  • 仅使用 GRPC 连接到对话流 StreamingDetectIntent,卡在等待 responseStream.MoveNext

    我正在尝试将 DialogFlow API v2 与 Unity 结合使用 由于 Unity 还没有官方 SDK 所以我使用了 Grpc beta unity SDK 以及使用 Grpc 工具中的 Protobuf 和 protoc 创建的
  • Unity c# 四元数:将 y 轴与 z 轴交换

    我需要旋转一个对象以相对于现实世界进行精确旋转 因此调用Input gyro attitude返回表示设备位置的四元数 另一方面 这迫使我根据这个四元数作为默认旋转来计算每个旋转 将某些对象设置为朝上的简单方法如下 Vector3 up I
  • 使用 Unity3D 按钮执行 xcode 函数?

    是否可以在 unity 中制作一个按钮来执行 Xcode 中的功能 我正在尝试执行来自 unity3d 项目的推送消息 请帮忙 因为这让我发疯 提前致谢 是的 您可以调用具有 C 接口的本机 Objective C 代码 您甚至可以在 Un
  • 在unity3D中显示数学方程

    我想使用它的 GUI 系统统一显示数学方程 有办法吗 我正在使用 C 语言在 Unity 中进行编程 如果我还可以使用 C 代码显示数学符号 这对我来说会很有用 谢谢 自 2016 年起 您可以使用TEXDraw https assetst
  • 优化 - 步进可能表现奇怪:iOS/Unity

    我正在尝试将 Unity 集成到 iOS 应用程序中 我已经遵循了这个教程http www agnosticdev com blog entry swift integrating unity and vuforia ios swift p
  • 画布未在顶部渲染

    我使用画布和 Unity UI 元素作为 HUD 我希望 HUD 能够领先于一切 但事实并非如此 以前没有使用过 Cardboard 但我相信你可以通过相机剔除来解决这个问题 只需按照以下步骤操作 Canvas 1 选择Canvas并将图层
  • 在 Unity 中构建 apk 应用程序时包含文件

    在unity中构建apk文件时如何将文件和文件夹添加到apk文件中 我需要的是在Android上安装应用程序后 在应用程序的父目录 android data com company product files 中存在一些文件和文件夹 这是我
  • 统一的阿拉伯语输入字段

    有没有办法将输入字段的语言统一更改为阿拉伯语 我尝试了ArabicSupport 它正确显示了阿拉伯语 但将其与输入字段一起使用却不起作用 因为 GameObject Find input field GetComponent
  • 使texture2D在运行时/脚本Unity3D中可读[重复]

    这个问题在这里已经有答案了 我有一个插件 可以让我访问 Android 手机图库中的图片 这给了我一个Texture2D类型的纹理 然后我想使用 GetPixels 函数对其进行编辑 但默认情况下它未设置为可读 如何使纹理可读 以便我可以在
  • 在 Unity 4.6 中构建的游戏中,插页式广告未在实时 Android 设备上显示

    我使用的是Unity版本 gt 4 6 0Admob版本 gt Google 移动广告 Unity 插件 v3 1 3 https github com googleads googleads mobile unity releases t
  • 将物体放置在相机前面

    这应该是一项简单的任务 我已经用谷歌搜索过了 但我不明白为什么这些例子对我有用 基本上 我想在我的第一人称游戏中将瓷砖放在地上 我希望我想要放置在地面上的物体 漂浮 在半空中 同时为其选择完美的位置 我可以实例化该对象 使其成为玩家相机的子
  • 统一;随机物体移动[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在制作一款机器人战斗游戏 我希望敌人随机移动 然后有时会向敌人移动 我希望运动包含在其中的代码 else if avoid fal
  • 空合并运算符分配给 self

    我目前在 Unity 中设置了两个脚本来处理一些 UI 音频 一个是管理器 另一个是为特定 UI 元素播放声音 我所拥有的简化版本是这样的 public class AudioUIManager MonoBehaviour Only one
  • Facebook Unity Sdk v5.0.3 尝试登录时在横向模式下崩溃 - Android

    当我在横向模式下单击登录按钮时 游戏崩溃 如果我使用纵向模式 一切都会正常工作 当我崩溃时 我从 bugsense 得到了以下堆栈跟踪 java lang RuntimeException Unable to start activity
  • 找到一个用于从 Unity 4.* 构建的 android 包的混淆工具 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我曾经做过一个游戏Unity引擎 用C 编写 现在我想发布一个Android 版本到 Google Pl
  • 从剪贴板读取文本

    我正在尝试在 Unity 中使用 C 读取剪贴板中的文本 然后将其设置为变量 我看过这篇文章 但它似乎在 Unity 中不起作用 https learn microsoft com en us dotnet api system windo
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • 使用Unity使用什么语言进行开发

    使用 Unity 进行编程时需要使用什么语言 或者它是多种语言的API 我通读了文档 我想我错过了所使用的语言的要点 它说它有 iOS 部署 这仍然允许程序员使用 Objective C 进行编码吗 Unity 是一个可用于多种平台的 sd

随机推荐

  • 使用 gitlab runner 安装 hostpah 卷的正确方法是什么?

    我需要创建一个卷来公开 maven m2 文件夹 以便在我的所有项目中重用 但我根本无法做到这一点 我的 gitlab 运行程序作为容器在我的 kubernetes 集群中运行 遵循部署和配置图 apiVersion extensions
  • 如何使用 Ms Access 日期/时间扩展数据类型

    访问女士表明有一种名为 日期 时间扩展 的数据类型 其中 日期 时间扩展数据类型存储日期和时间信息 与日期 时间数据类型类似 但它提供更大的日期范围 更高的小数精度以及与 SQL Server datetime2 日期类型的兼容性 但是 我
  • 将一个目录和子目录中的所有文件复制到单个位置[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 以下是将所有 txt 文件从一个位置复制到另一个位置的代码
  • 使用 Objective-C/Cocoa 启动 Mac 应用程序

    使用命令行启动路径查找器应用程序时 我使用open a Path Finder app Users 基于这个想法 我使用以下代码来启动路径查找器 我可以在不使用的情况下启动应用程序吗open命令行 NSTask task task NSTa
  • 恒定值变化

    假设我有一个结构体定义 struct thing thing x int z thing x this z 0 void foo const this gt x gt z 请注意 我创建了一个指向我自己的可变指针 邪恶的笑 然后我可以像这样
  • React Router v4 - 使用不同的查询参数重定向到相同的路由

    设想 有一个主页 搜索用户将被重定向到带有查询参数 例如 q abc 的搜索页面 现在在搜索页面上 用户再次尝试搜索不同的值 因此他再次被重定向到相同的搜索页面 但具有不同的查询参数 例如 q xyz Problem 当我尝试使用不同的查询
  • 嵌套 mybatis 映射

    我不知道如何在复杂的对象中使用 mybatis 结果 我有以下映射器类 public interface StationMapper MapKey stationId Map
  • Hibernate 根据条件选择顶部和底部 n 行

    假设我有两个表 书籍和评论 评论有一个列 星星 其值可以在 1 到 5 之间 一本书可以有许多评论 我如何选择所有书籍 以便使用 Criteria API 仅返回每本书的顶部和底部 3 条评论 而不是所有评论 如果 Criteria API
  • 有没有好的 jQuery 拖放文件上传插件? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在react-native-webview中保持最后一个网络会话处于活动状态?

    我正在开发一个应用程序 在该应用程序中我需要使用户的最后一个网络会话保持活动状态react native webview 这是所需的工作流程 我的应用程序只有一个 WebView 其中有固定的 url 正在加载 用户将打开应用程序并登录该网
  • 根据文件的扩展名将文件移动到适当的位置

    我有一个清理脚本 可以根据文件的扩展名将文件移动到适当的预设位置 例如 扩展名为 xls 的文件将被移动到 XLS 文件夹 sql 会被移动到 SQL 文件夹 依此类推 这是我的脚本 dirtyfolder server c Documen
  • 使用 lxml.etree 移动整个元素

    在 lxml 中 给定一个元素 是否可以将整个元素移动到 xml 文档中的其他位置 而不必读取它的所有子元素并重新创建它 我最好的例子就是改变父母 我翻阅了一些文档 但运气不佳 提前致谢 append insert和其他操作默认执行此操作
  • 在 UIPasteBoard 中复制 NSAttributedString

    如何在粘贴板中复制 NSAttributedString 允许用户粘贴或以编程方式粘贴 使用 void paste id sender 来自 UIResponderStandardEditActions 协议 I tried UIPaste
  • 段落“

    ”填充未应用

    以下三段代码的行为完全相同 p A paragraph of text here p p A paragraph of text here p p style padding 0 15 0 15 A paragraph of text he
  • MeteorJS模板不显示数据,不出现

    我最初以为我的集合没有接收数据 但事实证明我只是在查询中出现了拼写错误 但我的数据仍然没有出现在屏幕上 HTML 模板非常基本 如下所示
  • 新 Rails 3 项目中未定义的方法 `use_transactional_fixtures='

    当我尝试使用 MongoDB 和 Mongoid 在 Rails3 项目中运行测试时遇到错误 undefined method use transactional fixtures for ActiveSupport TestCase Cl
  • 创建实现特定接口的 ATL COM 对象

    我需要实现一个简单的 ATL COM 对象 该对象实现一个特定的接口 我已为其提供了 tlb 文件和 idl 文件 该接口非常简单 仅包含一个方法 我过去创建过许多 ATL 对象 但从未创建过必须实现特定接口的对象 我需要什么才能实现这一目
  • 跟踪App Store下载源

    有没有办法追踪App Store的下载源 例如 如果我在应用程序的 Facebook 页面上发布链接 我可以知道有多少人通过该链接下载了我的应用程序吗 感谢您的回答 是的 您可以使用 Apple App Analytics 的活动链接来跟踪
  • 如何将 UILongPressGestureRecognizer 添加到 UITextField?

    我正在尝试添加UILongPressGestureRecognizer到页面上的 UITextField 之一 但长按 UiTextField 时不会调用选择器方法 我将它添加到 UItextField 但当我长按 TextField 但在
  • 如何在多个游戏对象上统一使用相同的脚本?

    我有一个脚本CoinFill这会形成一个径向进度条 当 FillAmount 1 时 我想将该特定图像重置为零 我希望能够将其用于多个GameObjects 问题是当第一次FillAmount 1 速度较快的便士 可以点击镍币 可能是50