我正在做一个MMO游戏,我只是到了需要实现成就的地步.我该怎么做?最直接的方法是每100 be运行一次:
for a in achievements
for p in players
if a.meetsRequirements(p) then p.completeAchievement(a)
但这只会带来更多的麻烦。例如,如何检查该成就是否已实际完成?玩家是否只为特定的成就而在自己身上拥有自定义属性?我做这种事情的任务,因为他们主要是“收集100木材”,所以主动的任务对一个球员检查。另外,必须有一个更好的时间来检查它,我认为这会周期性地减慢我的服务器速度。
嘿,伙计们,我在通过网络销毁物品时遇到了问题,所以我有一个拾取系统,在这个系统中,你走到物体前,然后把它们捡起来,当你拿起它们时,它们就会被添加到你的库存中,而地上的物品就会被销毁。现在,当你的服务器挑选物品时,这一切都很好,但当你的客户端,它只是简单地不工作,它所做的就是将物品添加到你的库存中。现在我总是看到一些事情,关于如何使它成为一个命令,它是一个命令,它似乎不起作用,你与之交互的项目有本地玩家权限并注册,玩家有本地玩家权限,但它就是不起作用。这是我的脚本
[Command]
public void CmdAddItem(GameObject hitcollider, int i)
{
我正在寻找一种方式来添加一个全国人民代表大会,出售物品的基础上,一个角色的成就。由于我缺乏其他编程技能,如果可能的话,我想用SQL命令来实现它,从而修改数据库。我浏览了维基上的conditions页面,但不知道如何使用提供的信息。 此外,我还回溯了关于NPC Charles Worth的db,他碰巧教裁缝基于他们所取得的成就的食谱。我打算复制这个卡通条件,但是找不到要使用的条目。 任何帮助,澄清数据库条目,或以另一种方式指出正确的方向,都是非常感谢的。
当玩家将物品移动到他的角色时,物品类型(Type)被发送到服务器
在玩家装备了臂章的情况下,如果左边已经有了item_id,那么type = "bracelet“Id就会尝试将物品id放在game_moblist (游戏中的玩家和坏蛋)表下的左边的括号列中,然后再放到右边。我使用值=0来表示一个空插槽。
if (type=="bracelet"){
to_sql="UPDATE game_moblist SET leftbracer"="+item_id+" WHERE id="+player_id
}
以前我先使用sel
我使用mmorpg,我正在创建一个名为chatlink的系统。在这个系统中,当玩家在物品上按下ctrl键时,该物品就会被链接到聊天窗口上,所以当它被发送时,所有收到聊天消息的玩家都可以点击句子的那一部分,一个带有物品规格的窗口就会出现。
考虑一下下面的内容:
玩家:嘿,我在卖<ItemA>和<Scale Boots>。
我必须在一个类中存储以下内容,(< position start ),(> position end ),项目名称颜色,项目,(项目通过空*指针存储)。我有以下类:
class chatitem
{
public:
chatitem(