成就系统实践

2026年华为od机试真题题库 OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷)OD统一考试(E卷) 阅读详情

目的

实践跨平台的成就发布系统

目标平台

iOS, Android

UML

CBAchievementExhibitor这个类,继承自观察者模式中的CBObserver类。

因为可能根据不同的需求,会实践不同的扩充,像是国外用户可能较少使用微博,国内用户因为墙较少上fb跟推特,所以提供这个接口供扩充用。

在跨平台方面,则是在内部解决。

例如:CBWeiboExhibitor中会声明一个CBAchievementExhibitor成员,而会在分别实践个CBiOSWeiboExhibitor及CBAndroidWeiboExhibitor

CBWeiboExhibitor的方法则是呼叫抽象成员的方法,,在不同平台下则载入不同的实践。

这个类则是成就的管理类,负责从载入成就的设定档以及目前成就的存档,并且处理成就新增等问题。同时提供添加Exhibitor的方法。

同时所有成就值都透过管理类来变更,而管理类也会将变更过后的结果派送到Exhibitor。

将成就的部份的数据封装到一个类中,已简化扩充时的难度

运作方式如上图:

1. 读取默认的设定档

2. 读取已经有的成就存档

3. 同步成就,若设定档有改版,如新增成就,则新增该成就到成就存档。

4. 透过管理类增加成就值。

5. 若完成则通知注册的CBAchievementExhibitor展示成就。


输出至上CBDebugExhibitor

call CBDebugExhibitor::post()
ID:com.cloudbox.superbabypig.stage1_clear [100.00%]
Current Value:[1.00], Target Value:[1.00]
Complete:[YES]
Description:Stage 1 clear, Image Name:achievement1.png 

输出至画面(CBScreenExhibitor)

至此本地端成就系统就算完成可以运作了,可以跨平台,以及成就结果可储存于本地端。

接下来只要逐一实践GameCenter, Facebook, Weibo等的功能,逐一加上,增加其完整性。

【华为OD机试考生抽中题 B卷】荒岛求生,用 C 编码,速通 有一个荒岛,只有左右两个港口,只有一座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如果两个人相遇,则 pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。8 与-8 相遇,同归于尽,10 遇到-5,打赢并减少五点体力,最终逃生的为[5,5],均从右侧港口逃生,输出 2。参加华为 od 机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。系列非 0 整数,用空格隔开,正数代表向右逃生,负数代表向左逃生。 阅读详情

相关推荐

【华为OD机试B卷,GO题解独家】荒岛求生

有一个荒岛,只有左右两个港口,只有一座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如果两个人相遇,则 pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。8 与-8 相遇,同归于尽,10 遇到-5,打赢并减少五点体力,最终逃生的为[5,5],均从右侧港口逃生,输出 2。参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。系列非 0 整数,用空格隔开,正数代表向右逃生,负数代表向左逃生。

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 1万+

成就系统框架设计

成就系统配置 成就参数操作类型:1位 8位 16位 32位 AchivementGroup:同一种成就组成一组,比如杀死3个敌人,杀死10个敌人 Param1CheckType: 0:忽略 1:= 2:> 3:= 5: ModifyType:0:忽略 1:8位加 2:16位加 3:32位加 4:位设置 5:8位设置 6:16位设置 7:32位设置 UseEventParam: 0:使用M

heartrude的专栏 5480

【华为OD机试真题 C语言】341、荒岛求生 | 机试真题+思路参考+代码解析

>有一个荒岛,只有左右两个港口,只有- -座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如 果两个人相遇,则pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。

KJ.JK 4678

游戏开发(十五) 之 任务系统 成就系统

结合目前的塔防项目,介绍一下游戏开发中的 任务系统 先简单介绍下要讲的任务系统,因为游戏内容不多,所以目前的任务都比较简单,与其说是任务系统,不如叫成就系统.但是就算复杂的MMORPG游戏的任务系统,也可以按照此思路来做. 这次我只实现了两大类任务(成就任务、每日任务) 先看下任务系统的配置表 任务ID 描述 父类型 子类型 目标值 前置任务 奖励ID 奖励数量 ID Txt P_Type S_Type Value Pre_

总会熬出头的 4986

【华为OD统一考试(B卷)】荒岛求生,JAVA 题解 | 华为OD机试考题

有一个荒岛,只有左右两个港口,只有一座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如果两个人相遇,则 pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。8 与-8 相遇,同归于尽,10 遇到-5,打赢并减少五点体力,最终逃生的为[5,5],均从右侧港口逃生,输出 2。参加华为 od 机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。系列非 0 整数,用空格隔开,正数代表向右逃生,负数代表向左逃生。

梦想橡皮擦,专栏100例写作模式先行者,现象级专栏 《Python 爬虫 100 例》作者、《滚雪球学 Python 专栏》原创者 1万+

华为OD机试2025C卷 - 荒岛求生 (C++ & Python & JAVA & JS & GO)

华为OD机试 2025C卷 荒岛求生,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 1538

成就系统实现(一)-概述

需求 在一个完整的业务流程链路中,用户的某种行为可能会触发成就的达成,如果成就达成了,推送一个弹窗让用户感知。第一版设计有11种可以达成的成就。每个成就都有对应的奖励。 功能分析 1.成就达成的条件分析,按照功能模块划分成就的类型 2.用户达成成就之后,之后同样的行为再也不会触发相同的成就 3.行为收集->成就条件判断->成就达成->奖励发放 架构设计 1.系统日均UV百万级别,成就

森林里的一天 4312

【华为OD机试】真题E卷-荒岛逃生(Java)

一个荒岛上有若干人,岛上只有一条路通往岛屿两端的港口,大家需要逃往两端的港口才可逃生。假定每个人移动的速度一样,且只可选择向左或 向右逃生。若两个人相遇,则进行决斗,战斗力强的能够活下来,并损失掉与对方相同的战斗力;若战斗力相同,则两人同归于尽。

u014481728的博客 1194

华为OD机试真题---荒岛逃生游戏

有一个荒岛,岛上只有一条路通往岛屿两端的港口,大家需要逃往两端的港口才可逃生。假定每个人移动的速度一样,且只可选择向左或向右逃生。若两个人相遇,则进行决斗,战斗力强的能够活下来,并损失掉与对方相同的战斗力;若战斗力相同,则两人同归于尽。 输入为一行非0整数数组,元素个数不超过30000,正负表示逃生方向(正表示向右逃生,负表示向左逃生),绝对值表示战斗力。数组越左边的数字表示离左边港口越近,逃生方向相同的人永远不会发生决斗。 输出为最终能够逃生的人数。

风信子的博客 1511

【华为OD机试真题 C++语言】341、荒岛求生 | 机试真题+思路参考+代码解析

>有一个荒岛,只有左右两个港口,只有- -座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如 果两个人相遇,则pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。

KJ.JK 3139

荒岛逃生游戏 - 华为OD机试真题(E卷、C++)

一个荒岛上有若干人,岛上只有一条路通往岛屿两端的港口,大家需要逃往两端的港口才可逃生。假定每个人移动的速度一样,且只可选择向左或 向右逃生。若两个人相遇,则进行决斗,战斗力强的能够活下来,并损失掉与对方相同的战斗力;正负表示逃生方向(正表示向右逃生,负表示向左逃生),绝对值表示战斗力,越左边的数字表示离左边港口越近,逃生方向相同的人永远不会发生决斗。能够逃生的人总数,没有人逃生输出0,输入异常时输出-1。

学习,你不是一个人在战斗 ~ 961302305(QQ,微信) 661

华为OD机试真题——荒岛求生(2025B卷:200分)Java/python/JavaScript/C/C++/GO最佳实现

华为OD机试真题——荒岛求生(2025B卷:200分)Java/python/JavaScript/C/C++/GO最佳实现

专注分享技术、实用优质教程、资源 1817

【华为OD机试真题 Python语言】341、荒岛求生 | 机试真题+思路参考+代码解析

>有一个荒岛,只有左右两个港口,只有- -座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如 果两个人相遇,则pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。

KJ.JK 3240

【华为OD机试真题 2025B卷】341、荒岛求生 | 机试真题+思路参考+代码解析(C++、Java、Py、C语言、JS)

题目描述 >有一个荒岛,只有左右两个港口,只有- -座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如 果两个人相遇,则pk,体力值大的能够打赢体力值小的,体力值相同则同归于尽,赢的人才能继续往前逃生,并减少相应的体力。

KJ.JK 1万+

【华为OD机试真题 2025B卷】771、荒岛求生 | 机试真题+思路参考+代码解析 (C++、Java、Py、C语言、JS)

【华为OD机试真题 2025B卷】771、荒岛求生 | 机试真题+思路参考+代码解析 (C++、Java、Py、C语言、JS) 华为od机试,华为od机试真题,华为od机试E卷,华为odE卷,华为od机试真题E卷,华为OD,华为OD机试,华为OD机试真题,华为od机考,华为od机试D卷,华为od机试真题D卷,华为od手撕代码,华为od,华为od机试C卷,华为od e卷,华为2025e卷,od机试,2025E卷,华为OD机试E卷,什么是华为od,华为od介绍,全面了解华为od,2025华为od,如何备战华为o

KJ.JK 7908

【华为OD机试】真题E卷-荒岛逃生(C++)

一个荒岛上有若干人,岛上只有一条路通往岛屿两端的港口,大家需要逃往两端的港口才可逃生。假定每个人移动的速度一样,且只可选择向左或 向右逃生。若两个人相遇,则进行决斗,战斗力强的能够活下来,并损失掉与对方相同的战斗力;若战斗力相同,则两人同归于尽。

u014481728的博客 1121
上一篇: 程序员的一天:台湾个人移动游戏开发者
下一篇: 用代码创建UITabBarController
云瑀
博客等级 码龄17年 502粉丝 150原创
评论 6
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值