- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我会取得这样的成就
获得1000分
登录20次
在 24 小时内完成 2 个任务
等等
最好的编程方式是什么? (例如,它背后的逻辑。在每个页面加载时检查所有可能的成就将是浪费资源)
最佳答案
这是一个相当开放的问题。一种方法是将用户已经取得的进展存储在数据库表中(每项成就一列),每次取得进展时,增加进度值。当达到目标时,可以为每个成就设置一个魔法值(null、100 万,等等),然后您只需要检查每个用户条目中的哪些列具有魔法值。
你可以只存储进度并计算每次访问的成就状态,但我认为这对于你提到的限时任务之类的事情会有问题,如果你出于任何原因改变目标,人们可能会感到厌烦,他们失去他们之前获得的成就。
可以说更正确的方法是使用静态“成就”表,其中每一行都详细说明一项成就以及目标。然后,您将拥有一个单独的“进度”表,其中每个用户都会为他们正在努力实现的每项不同成就各占一行。这需要更多的工作来实现,但与将目标硬编码到进度表中的列名称相比,您可以在以后更轻松地添加/删除/更改目标。我认为您不应该低估这将在以后给您带来的值(value)。这样,进度表可以为每个用户/成就组合包含多个列,这允许您存储诸如达到的时间成就等内容,并且您可以非常简单地获得这样的成就列表:
SELECT achievement_id
FROM progress
WHERE user_id = $user
AND achievment_time IS NOT NULL
如果你想在每个页面上显示成就,你必须为每个页面加载检查一些东西,但如果你以这些方式之一记录进度,你就不会回到第一个原则和每次计算已进行了多少登录、已完成多少任务等 - 只需从您的数据库中选择一个 SELECT,我认为这就是您的意思。
记录进度对于诸如登录次数之类的事情来说很简单(每次他们执行操作时只需增加一个计数器),但是您显然必须更仔细地考虑在限时保持进度标签的逻辑成就。在这里,您需要跟踪在单独的表中执行操作的时间戳(当然,您可能已经在这样做)并且每次创建新的时间戳时,计算之前时间段内的时间戳以查看是否成就已经达成。
关于php/mysql - 我正在做一个具有 'achievements' 的网络应用程序(有点像 xbox 成就) - 最好的编程方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10446525/
我想知道是否有适用于 Xbox One 的 API 允许您启动它(类似于 Windows 10 上的 Xbox 应用程序如何启动它)等等? 最佳答案 有一个 API,但它似乎是专有的,可能不会由 Mi
我在这里没有看到很多关于 Microsoft 提供的 xbox live api 的帖子。谁能给我指一个有活跃的 xbox live api 社区的网站? 最佳答案 这是相当模糊的,所以我会提供一个广
我需要让用户在我的应用程序中使用他们的 Xbox 登录。这是我的代码片段: base_url = 'https://login.live.com/oauth20_authorize.srf?'
我想要实现的是能够告诉 XBox 360 从某个服务器播放 HTTP/MP3 流,我想远程控制它(即不使用 XBox Controller /电视屏幕)。 我知道 XBox 检测到 UPnP 媒体服务
{{d.username}} {{d.description}}
注意:我的设备是 xbox 360 kinect 设备而不是 kinect for windows。我尝试过不同的 Linux 内核和不同的 libfreenect 编译,但没有雪茄。 连接线上的灯呈
我对 XBox 开发比较陌生,想知道最好的地方开始寻找了解有关 XBox Live 公开哪些 API 的更多信息。特别是围绕玩家和游戏成就、玩家详细信息、他们正在玩的其他游戏——诸如此类。 我见过ht
我正在使用新的 C# XBox Live API ( https://github.com/Microsoft/xbox-live-api-csharp ) 通过 UWP 应用程序进行官方访问。 我能
背景:我有一款游戏,主要是在(低规范)笔记本电脑上进行测试。它运行良好。在 xbox 上进行测试时,有一种方法在调用时似乎会严重影响性能/fps。在 PC 上,您不会注意到任何减速/跳帧。 我在 xb
我的目标是在不使用第三方 API 的情况下检索 Xbox 游戏的所有成就数据。 我在这里注册了一个应用程序:https://apps.dev.microsoft.com 我正在使用 Postman 来
有没有办法在不处理屏幕抓取等的情况下从 Xbox 获取用户的成就列表? 网站怎么样http://www.trueachievements.com做吗? (他们绝对不是屏幕抓取,因为他们没有我的 Liv
我到处都能找到有关 Xbox 360 游戏的热议。但是我想知道如何为 xbox 360 开发正常的应用程序。主要是基于 silverlight。 我也不确定这个自制的东西是关于什么的? Xbox 36
试图在C#wpf中获取光束 Angular ,If PropertyChange上引发了异常。有没有人举这个项目的例子,如果需要,我可以提供更多信息。我正在尝试使麦克风更改属性,但会引发异常
我只是在 Microsoft 完成了开发人员的注册,在远程访问设置中进入开发模式(在已注册的控制台中)不要给我允许通过浏览器访问 Xbox 远程访问的 IP 号码和提供的地址:https://xbox
有谁知道我在哪里可以获得 api 来获取特定游戏的所有成就?不适用于特定玩家代号。我需要 Xbox 游戏的所有成就。 我没有一些报废,但我想将我的应用程序提升到一个新的水平,并且我不想依赖报废网站。
我只是在 Microsoft 完成了开发人员的注册,在远程访问设置中进入开发模式(在已注册的控制台中)不要给我允许通过浏览器访问 Xbox 远程访问的 IP 号码和提供的地址:https://xbox
我在让应用程序在 Xbox One 上以零售模式运行时遇到严重问题。 该应用程序在开发模式下运行良好,我已上传到商店并顺利通过认证,但是当该应用程序随后通过商店安装到 Retail Xbox One
我尝试了多种模式来单独检测 B 按钮,但这些模式不起作用,或者它们还发现了 RB 和 LB。 我试过: /B(?!^LB$|^RB$)/g /^B$|^B,$|^ B,$/g /^B$|^B,$|^
我正在使用 xbox Controller 上的摇杆在屏幕周围移动一个小矩形。我非常适合鼠标输入,但我似乎遇到了 Controller 问题。该正方形出现在屏幕上的 (0,0) Controller
我设法找到了一个启动 xbox 360 Controller 以发出隆隆声(振动)的脚本,但我无法将其关闭。有没有办法将其设置为 5 秒后隆隆声停止? import ctypes # Define n
我是一名优秀的程序员,十分优秀!