拍卖行竞拍存储过程,存在什么问题呢?

Auction-House:拍卖行是您服务器的完整拍卖系统 立即下载

------------------------------------------------------

--Copyright (c) 1.0

--Author     :保密

--Date       :2010-3-17 16:39:58

--Description:拍卖行的竞标

--游戏里的拍卖行竞拍存储过程,玩家反映一口价竞拍物品,点券扣了,但物品没有收到,目前拍卖行总交易10万多次,

--这种情况出现了11次。大概是什么问题呢?目前多次测试没能重现,有没有牛人能目测出问题在哪儿?==========================================================================================

--业务逻辑如下(所有的扣点加点,调用外部的存储过程,返回接口和调用方法也不一致,汗):

--IF 点券交易

--BEGIN

--  IF 一口价  

--  BEGIN

--     1.发送给买家物品(发送到买家临时背包)

--     2.如果这个东西之前有另外的玩家竞价过,需要退还上一个玩家的点券

--     3.保存交易日志

--     4.删除拍卖行的物品,删除这条拍卖纪录

--     5.扣买家的点券

--     6.给卖家点券

--  END

--  ELSE 不是一口价,竞价

--  BEGIN     

--     1.退回上一个竞价者的点券

--     2.扣本次竞价者的点券

--  END

--END

--ELSE 游戏币交易

--BEGIN

--  1.退回上一个竞价者的游戏币

--  2.扣本次竞价者的游戏币

--END

--===========================================================================================

-- Return value:

--     0:执行成功

-- 特别说明,由于代码生成器问题,返回值只接收SELECT值,不接收直接RETURN的值,呃~~~不能改变别人就改变自己吧

------------------------------------------------------

ALTER PROCEDURE [dbo].[P_HBAuctionHouse_BidUp]

    @Idx BIGINT, -- 标识 

    @BuyerId varchar(50) ,-- 购买者Id,没有购买者的时候就是空的,有就是购买者的GUID

    @BuyerName varchar(50),--购买者名字

    @BuyPrice int -- 购买价  

AS

BEGIN

    SET XACT_ABORT ON

    BEGIN TRAN BIDUPTRAN

       DECLARE @BuyerUid UNIQUEIDENTIFIER--用户Id,外部传的字符串类型,需要转换成UNIQUEIDENTIFIER

       DECLARE @BidCount INT--竞标次数

       DECLARE @SellerId UNIQUEIDENTIFIER--卖家id

       DECLARE @SellerName VARCHAR(50)--卖家名称

       DECLARE @BeforeBuyerId VARCHAR(50)--上次的竞价者id

       DECLARE @BeforeBuyerName VARCHAR(50) --上次的竞价者NAME

       DECLARE @M INT--上次的购买价

       DECLARE @EndPrice INT--一口价   

       DECLARE @CurrencyType INT --点券还是游戏币     

       DECLARE @Result INT--点券增减返回值

       DECLARE @SRCID VARCHAR(50)--交易号,负的交易ID

       DECLARE @BeforePass9Name varchar(100)--之前买家的C通行证名

       DECLARE @BuyerPass9Name varchar(100)--当前买家的C通行证名

       DECLARE @TBLPAY TABLE(CODE VARCHAR(20))--交易表  

       DECLARE @NOW DATETIME--当前服务器时间

       SET @NOW = GETDATE()    

      

       SET @BidCount = -1--竞标次数

       IF @BuyerId <> ''

           SET @BuyerUid = CAST(@BuyerId AS UNIQUEIDENTIFIER)

       ELSE

           SET @BuyerUid = '00000000-0000-0000-0000-000000000000'

 

       SET @M = 0

   

    BEGIN   TRY

      

       --有无该条记录

       IF NOT EXISTS ( SELECT * FROM  [HB_AuctionHouse] WITH(NOLOCK) WHERE Idx = @Idx  )

       BEGIN

           IF @@TRANCOUNT > 0 ROLLBACK

           SELECT 6400  

           RETURN;      

       END

      

       --获取相关数据

       SELECT @IDX = IDX, @SellerId=SellerId ,@SellerName=SellerName,    @BeforeBuyerId=BuyerId,@BeforeBuyerName=BuyerName, @M=BuyPrice,@EndPrice=SellEndPrice, @BidCount =BidCount,@CurrencyType = CurrencyType

       FROM  [HB_AuctionHouse] WITH(XLOCK) WHERE Idx = @Idx

       IF @M > @BuyPrice

       BEGIN

           IF @@TRANCOUNT > 0 ROLLBACK

           SELECT 6407  

           RETURN;

       END

       IF @SellerId = @BuyerUid

       BEGIN

           IF @@TRANCOUNT > 0 ROLLBACK

           SELECT 6401      

           RETURN;   

       END

       --交易号

       SET @SRCID = CAST( @Idx * -1 AS VARCHAR(18)) + '_' + CAST( @BidCount AS VARCHAR(5))

 

       --允许用户竞标后,再一口价

       IF @BeforeBuyerId = @BuyerId AND @EndPrice <> @BuyPrice

       BEGIN

           IF @@TRANCOUNT > 0 ROLLBACK

           SELECT 6402      

           RETURN;   

       END

       IF @CurrencyType = 2--点券

       BEGIN

           IF @EndPrice = @BuyPrice--如果竞标价等于一口价,那就直接拍定

           BEGIN

              INSERT INTO [HB_TempPackage]--加入临时背包

                     ([ManagerId]

                     ,[ItemId]

                     ,[ItemStrengthLevel]

                     ,[ItemCode]

                     ,[ItemName]

                     ,[Count]

                     ,[ItemType]

                     ,[ImageId]

                     ,[Memo]

                     ,[Status]

                     ,[Rowtime]

                     ,[Increment])

              SELECT @BuyerId

                     ,ItemId

                     ,ItemStrengthLevel

                     ,ItemCode

                     ,ItemName

                     ,[Count]

                     ,[ItemType]

                     ,[ImageId]

                     ,'卖家:'+SellerName+',花费'+CAST(@BuyPrice AS VARCHAR(10))+'G'

                     ,0

                     ,GETDATE(),Increment FROM [HB_AuctionHouse] WHERE Idx = @Idx

             

              --退回上一个竞价者的钱$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$            

               IF @BidCount > 0

              BEGIN

                  --获取上一个买家的Pass9Name

--                DECLARE @BeforePass9Name varchar(100)

                  SELECT @BeforePass9Name = Pass9Name FROM dbo.HB_User U

                  INNER JOIN HB_MANAGER M ON U.UserGuid = M.UserId

                  WHERE M.ManagerGuid = @BeforeBuyerId

                  DECLARE @B VARCHAR(50)

                  SET @B = @SRCID+'_B'

                  EXEC P_HbPayAccount_Pay @BeforePass9Name,-1,@B,0,0,@M,@Result

                  IF @Result <> 5200

                  BEGIN                      

                     IF @@TRANCOUNT > 0 ROLLBACK

                     SELECT 6402  

                     RETURN;

                  END

              END

             

             

    --------------给上一个竞价者发一个邮件,通知竞标失败

    --------------通知卖家已经拍卖成功

              --保存交易日志

              INSERT INTO [HB_AuctionHouse_LOG]

              SELECT [Idx] ,    [ItemName] ,  [ItemStrengthLevel] ,

              [ItemId] , [ItemCode] ,  [ItemLevel],  [Count] ,  [ItemType] ,

              [ImageId] ,   [SellerId] ,  [SellerName], @BuyerId , @BuyerName ,

              [SellStartPrice] ,   [SellEndPrice],   [BuyPrice] ,

              [BidCount] ,[CurrencyType] ,[Increment] FROM [HB_AuctionHouse] WHERE Idx = @Idx

 

              --删除拍卖行的物品,删除这条拍卖纪录

              DELETE [HB_AuctionHouse] WHERE Idx = @Idx           

             

              --获取Pass9Name

              SELECT @BuyerPass9Name = Pass9Name FROM dbo.HB_User U (NOLOCK)

              INNER JOIN HB_MANAGER M  (NOLOCK) ON U.UserGuid = M.UserId

              WHERE M.ManagerGuid = @BuyerUid   

 

              --扣买家的点券

              DECLARE @N VARCHAR(50)

              SET @N = @SRCID+'_N'

               INSERT @TBLPAY

              EXEC P_HBPAYACCOUNT_CONSUMEPOINT @BuyerPass9Name,@N,@BuyPrice,@NOW

              IF NOT EXISTS(SELECT 1 FROM @TBLPAY WHERE CODE='5200')

              BEGIN

                  IF @@TRANCOUNT > 0 ROLLBACK

                  SELECT 6402  

                  RETURN;

              END              

 

              --给卖家点券$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

              --获取Pass9Name

              DECLARE @SellerPass9Name varchar(100)

              SELECT @SellerPass9Name = Pass9Name FROM dbo.HB_User U

              INNER JOIN HB_MANAGER M ON U.UserGuid = M.UserId

              WHERE M.ManagerGuid = @SellerId              

              DECLARE @S VARCHAR(50)

              SET @S = @SRCID+'_S'

              EXEC P_HbPayAccount_Pay @SellerPass9Name,-1,@S,0,0,@BuyPrice,@Result

              --PRINT @Result

              IF @Result <> 5200

              BEGIN                      

                  IF @@TRANCOUNT > 0 ROLLBACK

                  SELECT 6402  

                  RETURN;

              END   

 

           END

           ELSE---不是一口价

           BEGIN

              IF @BidCount = 0--是否是第一次竞拍

              BEGIN

                  IF @BuyPrice = @M

                  BEGIN     

                         --PRINT 2        

                         UPDATE [dbo].[HB_AuctionHouse] SET

                            [BuyerId] = @BuyerId,

                            BuyerName = @BuyerName,

                            [BuyPrice] = @BuyPrice,

                            [LimitTime] = DATEADD(n,5,[LimitTime]) ,

                            BidCount = BidCount + 1

                         WHERE

                            [Idx] = @Idx 

                         --PRINT 3           

                  END

                  ELSE

                  BEGIN

                         IF @@TRANCOUNT > 0 ROLLBACK

                         SELECT 6406

                         RETURN;

                  END

              END

              ELSE IF @BidCount > 0 --不是第一次竞拍

              BEGIN

                  IF @BuyPrice > @M

                  BEGIN            

                     --退回上一个竞价者的钱$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

                     --获取上一个买家的Pass9Name

                    

                     SELECT @BeforePass9Name = Pass9Name FROM dbo.HB_User U

                     INNER JOIN HB_MANAGER M ON U.UserGuid = M.UserId

                     WHERE M.ManagerGuid = @BeforeBuyerId

                    

                     EXEC P_HbPayAccount_Pay @BeforePass9Name,-1,@SRCID,0,0,@M,@Result

                     IF @Result <> 5200

                     BEGIN                      

                         IF @@TRANCOUNT > 0 ROLLBACK

                         SELECT 6402  

                         RETURN;

                     END          

    --------------------给上一个竞价者发一个邮件,通知竞标失败

                        

                     --扣本次竞价者的钱放到后面  

                     UPDATE [dbo].[HB_AuctionHouse] SET

                         [BuyerId] = @BuyerId,

                         BuyerName = @BuyerName,

                         [BuyPrice] = @BuyPrice,

                         [LimitTime] = DATEADD(n,5,[LimitTime]) ,

                         BidCount = BidCount + 1

                     WHERE

                         [Idx] = @Idx AND BuyPrice < @BuyPrice

                  END

                  ELSE

                  BEGIN               

                     IF @@TRANCOUNT > 0 ROLLBACK

                     SELECT 6407

                     RETURN;

                  END

              END

              --对玩家游戏币验证,扣买家的点券$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

              --

              SELECT @BuyerPass9Name = Pass9Name FROM dbo.HB_User U

              INNER JOIN HB_MANAGER M ON U.UserGuid = M.UserId

              WHERE M.ManagerGuid = @BuyerUid   

 

                        

             

              INSERT @TBLPAY

              EXEC P_HBPAYACCOUNT_CONSUMEPOINT @BuyerPass9Name,@SRCID,@BuyPrice,@NOW

              IF NOT EXISTS(SELECT 1 FROM @TBLPAY WHERE CODE='5200')

              BEGIN

                  IF @@TRANCOUNT > 0 ROLLBACK

                  SELECT 6402  

                  RETURN;

              END              

           END   

       END

       ELSE--游戏币

       BEGIN

           IF @BidCount = 0--是否是第一次竞拍

           BEGIN

              IF @BuyPrice = @M

              BEGIN     

                     --PRINT 2        

                     UPDATE [dbo].[HB_AuctionHouse] SET

                         [BuyerId] = @BuyerId,

                         BuyerName = @BuyerName,

                         [BuyPrice] = @BuyPrice,

                         [LimitTime] = DATEADD(n,5,[LimitTime]) ,

                         BidCount = BidCount + 1

                     WHERE  [Idx] = @Idx 

                     --PRINT 3           

              END

              ELSE

              BEGIN

                     IF @@TRANCOUNT > 0 ROLLBACK

                     SELECT 6406  

                     RETURN;                 

              END

           END

           ELSE IF @BidCount > 0 --不是第一次竞拍

           BEGIN

              IF @BuyPrice > @M

              BEGIN            

                  --退回上一个竞价者的钱

                  UPDATE HB_ManagerProperty SET  

                     [Money] = [Money] + @M

                  WHERE ManagerId = CAST(@BeforeBuyerId AS UNIQUEIDENTIFIER)

--------------------给上一个竞价者发一个邮件,通知竞标失败

                    

                  --扣本次竞价者的钱放到后面  

                  UPDATE [dbo].[HB_AuctionHouse] SET

                     [BuyerId] = @BuyerId,

                     BuyerName = @BuyerName,

                     [BuyPrice] = @BuyPrice,

                     [LimitTime] = DATEADD(n,5,[LimitTime]) ,

                     BidCount = BidCount + 1

                  WHERE

                     [Idx] = @Idx AND BuyPrice < @BuyPrice

              END

              ELSE

              BEGIN               

                  IF @@TRANCOUNT > 0 ROLLBACK

                  SELECT 6407

                  RETURN;

              END

           END

           --对玩家游戏币验证

            IF EXISTS (SELECT * FROM HB_ManagerProperty WHERE ManagerId = @BuyerUid AND [Money] >= @BuyPrice)

            BEGIN

               UPDATE  HB_ManagerProperty

               SET [Money] = [Money] - @BuyPrice

               WHERE ManagerId = @BuyerUid

             

            END

            ELSE--没有足够的游戏币

            BEGIN

              IF @@TRANCOUNT > 0 ROLLBACK

              SELECT 6408

              RETURN;

            END

       END   

      

    END   TRY

    BEGIN CATCH

       IF @@TRANCOUNT > 0 ROLLBACK TRAN      

    END CATCH

    IF @@TRANCOUNT > 0

    COMMIT TRAN BIDUPTRAN

   

END

SELECT 0

RETURN 0

 

auctioneer_bot:电报机器人将收购拍卖师API Auctioneer_bot 电报机器人装备拍卖师API 立即下载

相关推荐

深入解析Matlab phantom函数:从基础模体到自定义头部仿真

本文深入解析了Matlab中的phantom函数,它是医学图像处理算法测试的核心工具。文章详细介绍了如何使用内置的Shepp-Logan及其改良版头部仿真模体,并重点讲解了通过自定义参数矩阵来构建专属模体的方法。通过从生成模体到模拟投影(正弦图)再到图像重建的完整实战流程,展示了phantom函数在CT等算法开发与验证中的关键作用。

m3n5b7v8c9x的博客 950

魔兽世界单机(芒果3.3.5a)机器人操作命令大全

首先,自己新增加的机器人名字是需要在自己的同一个账号里面的才行! 首先,我们在游戏中创建一个战士人物,假设为“老大” 然后再建一个法师人物,名叫“法师宝宝” 用人物“老大”登录游戏,在出生点,调出对话框,输入 .botadd法师宝宝 回车,这样名叫“法师宝宝”的法师就自动登录进入游戏了,如果和你是同一个出生点,那么你现在就看到这个人物了(不在一个地点可以使用GM命令把机器人召...

wed110的专栏 6万+

避开ego_planner仿真的第一个坑:深度相机、点云与odom话题配置全指南

本文详细解析了ego_planner仿真中深度相机、点云与odom话题配置的关键问题,帮助开发者避开常见陷阱。从数据流架构到具体配置细节,包括深度相机的内外参匹配、点云数据规范要求以及odom话题的验证方法,提供了全面的实战指南和优化建议。

weixin_30335575的博客 493

魔兽worldserver.conf 服务端配置文件说明

我是艾西,今天把很多小伙伴需要的魔兽worldserver.conf 服务端配置文件说明分享给大家,大家可以自己研究参考下 worldserver.conf 这个文件是服务端的配置文件,可以在这里做很多个性化修改注意:修改这个必须重启服务端才能生效首先这个文件要使用支持 utf-8 格式的文本编辑器,比如 VS code,sublime 等等,不要用记事本编辑下面就来说说其中的部分设置MaxOverspeedPings = 2,玩家超速检查,2 为正常检查,3+ 为加强检查(比 2 更难踢),0 为不检查超

V13807970340的博客 6801

轴承故障诊断——领域知识

幅域分析、频域分析及轴承方面的领域知识

qq_58516607的博客 3533

原理之(〇)3D Gaussian Splatting 数学原理与推导

3D Gaussian Splatting源于EWA的理论基础,本文重点从EWA模型出发,详细推导3D GS中的数学原理,加深对鱼眼相机畸变场景下的理解。

scott198512的博客 4157

使用SpringMVC Restful风格搭建web项目(在线拍卖系统)

笔记: RESTful 风格的 webservice 越来越流行了, sun 也推出了 RESTful WebService 的官方规范: JAX-RS ,全称: Java API for RESTful WebService。该规范定义了一系列的注解 RESTful 简化了 web service 的设计,它不再需要 wsdl ,也不再需要 soap 协议, 而是通过最简单的 http ...

sinat_41897556的博客 708

从 SOAUTH2 到系统用户,SAP AS ABAP 里配置 OAuth 2.0 Client 的完整落地思路

SAP OAuth 2.0客户端配置的核心在于建立系统级信任关系。在AS ABAP中,每个OAuth 2.0客户端必须关联一个System类型的用户账号(通过SU01创建),并建议采用业务语义明确的命名规范(如ZBTP_PO_APPROVAL_APP)。关键配置包括:客户端认证方式(推荐SSL证书而非共享密钥)、Token生命周期(默认3600秒)、Scope访问范围,以及根据应用场景选择Authorization Code或SAML 2.0 Bearer等授权模式。项目实践中应避免混合配置不同授权类型,而

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 988

拍卖功能涉及到多表操作的问题 [全部放在存储过程中处理]

情景描述:   在线拍卖,客户浏览拍卖的商品,对商品进行出价时的一系列的操作   涉及的表:商品表goods 、用户表users 、订单表orders --1 用户表 create table Users ( uId int identity(1,1) primary key, loginId nvarchar(50) not null, loginPwd nv...

diao348697428的博客 276

SA8155P QCOM 车载系统介绍

高通车载相机开发

qq_37057338的博客 5230

复现CVE-2014-085(Apache ZooKeeper 未授权访问漏洞)

默认安装配置完的zookeeper允许未授权访问,管理员未配置访问控制列表(ACL)。导致攻击者可以在默认开放的2181端口下通过执行envi命令获得大量敏感信息(系统名称、java环境)导致任意用户可以在网络不受限的情况下进行未授权访问读取数据。

记录并分享学习安全的知识点.. 2176

【附源码】计算机毕业设计“臻宝”书画竞拍系统(java+springboot+mysql+mybatis+论文)

后端服务接收到请求后,执行相应的业务逻辑处理,这通常包括与MySQL数据库的交互,如查询数据、插入记录、更新或删除数据等操作。这样,前端Vue.js和后端Spring Boot框架的接口紧密协作,而MySQL数据库则作为数据存储和管理的核心,确保了整个系统的数据一致性和高效处理。随着艺术品市场的繁荣,书画作品作为一种重要的文化资产,其竞拍活动日益频繁。因此,研究并开发一个界面友好、操作简便、安全可靠的"臻宝"书画竞拍系统,对于促进艺术市场的健康发展,保护买卖双方的合法权益具有重要的现实意义。

睿轩毕设项目 444

2023华为od机试C卷【启动多任务排序】C++ 实现

一个应用启动时,会有多个初始化任务需要执行,并且任务之间有依赖关系,例如A任务依赖B任务,那么必须在B任务执行完成之后,才能开始执行A任务。现在给出多条任务依赖关系的规则,请输入任务的顺序执行序列,规则采用贪婪策略,即一个任务如果没有依赖的任务,则立刻开始执行,如果同时有多个任务要执行,则根据任务名称字母顺序排序。

MISAYAONE的博客 887

ssm/php/node/python拍卖平台

探讨bnwr9拍卖平台的发展背景不仅有助于理解其在当前市场中的定位和策略,还能够为其他同类平台提供借鉴和参考。通过分析bnwr9的发展历程、技术架构、用户互动方式以及市场反馈,可以揭示其成功的关键因素,同时也能够发现潜在的挑战和风险。随着消费者习惯的转变和技术创新的不断进步,拍卖平台需要不断创新以适应变化,研究bnwr9的背景和发展将有助于预测未来趋势,指导平台调整战略,保持竞争优势。其中,bnwr9作为一个新兴的拍卖平台,凭借其独特的运营机制和服务理念,在市场上占据了一席之地。

天天 程序设计 1097

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

各种数据库的连接语句

http://www.connectionstrings.com

HERO 1263

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

程序员必看:关于SQL Server的若干注意事项

如果你正在负责一个基于SQL Server的项目,或者你刚刚接触SQL Server,你都有可能要面临一些数据库性能的问题,这篇文章会为你提供一些有用的指导(其中大多数也可以用于其它的DBMS)。 在这里,我不打算介绍使用SQL Server的窍门,也不能提供一个包治百病的方案,我所做的是总结一些经验----关于如何形成一个好的设计。这些经验来自我过去几年中经受的教训,一直来,我看到许

HERO 877

Oracle PL/SQL语言基础

http://www.oracle.com.cn/viewthread.php?tid=15090

HERO 807

使用VS.NET2003编写存储过程

关键:.NET来  源:微软MSDN使用VS.NET2003编写存储过程 作者:Mike Amundsen 发文时间:2003.12.18目录:为什么不使用特殊的查询语句将存储过程添加到 Visual Studio .NET 数据库项目中使用 Visual Studio .NET 添加存储过程使用自定义标量函数 下载 Jump

HERO 794

SQL Server 索引结构及其使用

http://www.vckbase.com/document/listdoc.asp?mclsid=11&sclsid=1111

HERO 743

针对 .NET 开发人员的存储过程评估

http://www.microsoft.com/china/msdn/library/langtool/vsdotnet/storedprocsnetdev2.mspx

HERO 742

SQL SERVER基础知识,掌握超过15项,可以算是基础比较好的了,月薪能过万了。

SQL SERVER基础知识,掌握超过15项,可以算是基础比较好的了,月薪能过万了。

HERO 654

【Unity知识速递】第7期 Unity 6.6 深度解析:WebGPU 正式版与 WebAssembly64,Web 游戏的内存革命

如何启用 Wasm64?需要注意的是,Wasm64 需要浏览器支持 Memory64 提案,目前主流浏览器的最新版本都已支持。一句话总结: Unity 6.6 用 WebGPU 转正、Wasm64 16GB 内存和渐进式加载三连击,将 Web 游戏的体验天花板又往上推了一大截——Web 平台不再是"妥协版",正在成为真正的一等公民。Unity 6.6 新增了 WebAssembly64(Wasm64) 构建选项,这可能是本次更新中对 Web 游戏开发者影响最大的一项升级。

crystal_WJT的博客 427

设计模式(unity游戏研发版)

当你使用图形用户界面类时通常会遇到一个问题。比如,你创建了自定义按钮类并允许客户端在按钮中注入自定义代码,这样当用户按下按钮时就会触发这些代码。观察者模式允许任何实现了订阅者接口的对象订阅发布者对象的事件通知。你可在按钮中添加订阅机制,允许客户端通过自定义订阅类注入自定义代码。在Unity中,这就像UnityEvent在Inspector中绑定多个回调。

m0_63330263的博客 102

我给 DeepSeek 大肥鱼做了一款马里奥式闯关游戏

当全网都在把大肥鱼做成直播虚拟主播的时候,我决定给她做一款横版闯关游戏。

2301_79028807的博客 901

Claude Fable 5.2 登顶:65 分、单发做游戏,和一份 $26.54 一单的账单

Anthropic 发布 Claude Fable 5.2:AA 智能指数 65 分登顶历史第一,但性能 #71、成本 #73、冗余度 #72——最强能力、最贵成本、最慢速度的矛盾体。同底层 Mythos 5.2 无护栏反而更强。文章拆解:65 分构成、官方实战验收、基准提升真伪、一条提示词一晚做出街机游戏的完整流水线(自写机器人跑完 12 关自检)、$26.54 账单与 98% 缓存折扣下的真实成本重估。

johnsong2009的博客 238
上一篇: 游戏主循环
下一篇: AOP技术基础
comeon_data
博客等级 码龄22年 15粉丝 63原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值