專(zhuān)利名稱(chēng):一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,特別涉及一種在網(wǎng)絡(luò)棋牌游 戲中實(shí)現(xiàn)靈活算分的方法。
背景技術(shù):
在網(wǎng)絡(luò)棋牌游戲中,同桌的用戶每打完一局牌,都希望馬上能得知他和同桌其他 人當(dāng)前得的分?jǐn)?shù),也希望能得知自己和同桌其他人的累積分?jǐn)?shù)。實(shí)現(xiàn)簡(jiǎn)單的算分比較容易, 但是通常在實(shí)際運(yùn)營(yíng)中,運(yùn)營(yíng)商希望為不同類(lèi)型的房間執(zhí)行不同類(lèi)型的算分方法。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,它可 以進(jìn)行靈活配置以使得在不同的房間里,在每一局游戲結(jié)束后,采用不同的算分策略為用 戶累計(jì)得分。
本發(fā)明所述的一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,該方法至少包括如下的步 驟步驟1 寫(xiě)一個(gè)算分類(lèi)接口,所有實(shí)現(xiàn)算分的類(lèi)都必須實(shí)現(xiàn)此接口,此接口僅包含 一個(gè)用于執(zhí)行具體算分的方法,此方法僅包含一個(gè)參數(shù),它用于傳入牌桌上下文信息,因?yàn)?房間服務(wù)器必須依賴(lài)這些上下文信息執(zhí)行具體算分操作;步驟2 使用房間配置工具在每個(gè)游戲房間中配置算策略,它為房間指定算分實(shí) 現(xiàn)類(lèi)的全名和此類(lèi)此算分實(shí)現(xiàn)類(lèi)所在的程序集名稱(chēng),并將這些配置信息將寫(xiě)入數(shù)據(jù)庫(kù)或者 配置文件;步驟3 當(dāng)房間啟動(dòng)的時(shí)候,初始化一個(gè)算分對(duì)象緩存器,它把房間的算分配置信 息讀入內(nèi)存進(jìn)行緩存;步驟4:當(dāng)每一局游戲結(jié)束時(shí),房間服務(wù)器從算分對(duì)象緩存器中獲取算分的類(lèi)全 名;步驟5 房間服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算分 類(lèi)實(shí)例;步驟6 房間服務(wù)器調(diào)用此算分實(shí)例的方法,完成算分操作;本發(fā)明所述的一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,房間服務(wù)器以算分類(lèi)的全 名為傳入?yún)?shù),從算分工廠中獲取一個(gè)算分實(shí)例,其步驟為步驟51 算分工廠類(lèi)從緩存的算分字典列表中,以算分類(lèi)的全名為鍵,查找是否 有緩存過(guò)的算分對(duì)象;步驟52 如果已經(jīng)有緩存的對(duì)象,直接返回給調(diào)用者;步驟53 如果沒(méi)有緩存的對(duì)象,從房間的算分緩存配置中讀取此類(lèi)全名所在的程 序集,根據(jù)這些程序集名稱(chēng)和類(lèi)全名,用反射的方式生成一個(gè)算分對(duì)象;步驟54:把生成的算分對(duì)象緩存在算分工廠的算分字典列表中,并把此對(duì)象返回給調(diào)用者;本發(fā)明涉及的一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,使得算分的實(shí)現(xiàn)完全是可 配置的,并且這種可配置的算分可以以插件的方式附加到游戲服務(wù)器中,修改一個(gè)已有的 算分邏輯或者增加一個(gè)新的算分類(lèi)都不會(huì)對(duì)其他邏輯構(gòu)成任何影響。
具體實(shí)施例方式本發(fā)明的主要步驟如下步驟1 寫(xiě)一個(gè)算分類(lèi)接口,所有實(shí)現(xiàn)算分的類(lèi)都必須實(shí)現(xiàn)此接口 ;步驟2 使用房間配置工具在每個(gè)游戲房間中配置算策略,它為房間指定算分實(shí) 現(xiàn)類(lèi)的全名和此類(lèi)此算分實(shí)現(xiàn)類(lèi)所在的程序集名稱(chēng),并將這些配置信息將寫(xiě)入數(shù)據(jù)庫(kù)或者 配置文件;步驟3 當(dāng)房間啟動(dòng)的時(shí)候,初始化一個(gè)算分對(duì)象緩存器,它把房間的算分配置信 息讀入內(nèi)存進(jìn)行緩存;步驟4:當(dāng)每一局游戲結(jié)束時(shí),房間服務(wù)器從算分對(duì)象緩存器中獲取算分的類(lèi)全 名;步驟5 房間服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算分 類(lèi)實(shí)例;步驟6 房間服務(wù)器調(diào)用此算分實(shí)例的方法,完成算分操作;上述步驟5,房間服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算 分類(lèi)實(shí)例的具體步驟如下步驟51 算分工廠類(lèi)從緩存的算分字典列表中,以算分類(lèi)的全名為鍵,查找是否 有緩存過(guò)的算分對(duì)象;步驟52 如果已經(jīng)有緩存的對(duì)象,直接返回給調(diào)用者;步驟53 如果沒(méi)有緩存的對(duì)象,從房間的算分緩存配置中讀取此類(lèi)全名所在的程 序集,根據(jù)這些程序集名稱(chēng)和類(lèi)全名,用反射的方式生成一個(gè)算分對(duì)象;步驟54 把生成的算分對(duì)象緩存在算分工廠的算分字典列表中,并把此對(duì)象返回 給調(diào)用者;算分對(duì)象緩存在算分工廠的算分字典列表中,并把此對(duì)象返回給調(diào)用者;上述的技術(shù)方案實(shí)施時(shí),游戲房間服務(wù)器的開(kāi)發(fā)人員可以很方便靈活的為不同房 間的不同用戶狀態(tài)指定算分實(shí)現(xiàn)類(lèi),這種可配置的算分可以以插件的方式附加到游戲服務(wù) 器中,修改一個(gè)已有的算分類(lèi)邏輯或者增加一個(gè)新的都不會(huì)對(duì)其他邏輯構(gòu)成任何影響,日 后擴(kuò)展游戲算分功能將變得非常容易。最后所應(yīng)說(shuō)明的是,以上實(shí)施例僅用以說(shuō)明而并非限制本發(fā)明所描述的技術(shù)方 案;因此,盡管本說(shuō)明書(shū)參照上述的實(shí)施例對(duì)本發(fā)明已進(jìn)行了詳細(xì)的說(shuō)明,但是,本領(lǐng)域的 普通技術(shù)人員應(yīng)當(dāng)理解,仍然可以對(duì)本發(fā)明進(jìn)行修改或者等同地替換;而一切不脫離本發(fā) 明的精神和范圍的技術(shù)方案及其改進(jìn),其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,其特征在于該方法至少包括如下的步驟步驟1寫(xiě)一個(gè)算分類(lèi)接口,所有實(shí)現(xiàn)算分的類(lèi)都必須實(shí)現(xiàn)此接口,此接口僅包含一個(gè)用于執(zhí)行具體算分的方法,此方法僅包含一個(gè)參數(shù),它用于傳入牌桌上下文信息,因?yàn)榉块g服務(wù)器必須依賴(lài)這些上下文信息執(zhí)行具體算分操作。步驟2使用房間配置工具在每個(gè)游戲房間中配置算策略,它為房間指定算分實(shí)現(xiàn)類(lèi)的全名和此類(lèi)此算分實(shí)現(xiàn)類(lèi)所在的程序集名稱(chēng),并將這些配置信息將寫(xiě)入數(shù)據(jù)庫(kù)或者配置文件。步驟3當(dāng)房間啟動(dòng)的時(shí)候,初始化一個(gè)算分對(duì)象緩存器,它把房間的算分配置信息讀入內(nèi)存進(jìn)行緩存。步驟4當(dāng)每一局游戲結(jié)束時(shí),房間服務(wù)器從算分對(duì)象緩存器中獲取算分的類(lèi)全名。步驟5房間服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算分類(lèi)實(shí)例。步驟6房間服務(wù)器調(diào)用此算分實(shí)例的方法,完成算分操作。
2.根據(jù)權(quán)利要求1所述的一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,其特征在于房間 服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算分類(lèi)實(shí)例,其步驟為步驟51 算分工廠類(lèi)從緩存的算分字典列表中,以算分類(lèi)的全名為鍵,查找是否有緩 存過(guò)的算分對(duì)象。步驟52 如果已經(jīng)有緩存的對(duì)象,直接返回給調(diào)用者。步驟53:如果沒(méi)有緩存的對(duì)象,從房間的算分緩存配置中讀取此類(lèi)全名所在的程序 集,根據(jù)這些程序集名稱(chēng)和類(lèi)全名,用反射的方式生成一個(gè)算分對(duì)象。步驟54 把生成的算分對(duì)象緩存在算分工廠的算分字典列表中,并把此對(duì)象返回給調(diào) 用者。
全文摘要
一種在棋牌游戲中實(shí)現(xiàn)靈活算分的方法,首先寫(xiě)一個(gè)算分類(lèi)接口,所有實(shí)現(xiàn)算分的類(lèi)都必須實(shí)現(xiàn)此接口;使用房間配置工具在每個(gè)游戲房間中配置算策略;當(dāng)房間啟動(dòng)的時(shí)候,初始化一個(gè)算分對(duì)象緩存器,它把房間的算分配置信息讀入內(nèi)存進(jìn)行緩存;當(dāng)每一局游戲結(jié)束時(shí),房間服務(wù)器從算分對(duì)象緩存器中獲取算分的類(lèi)全名;然后房間服務(wù)器以算分類(lèi)的全名為傳入?yún)?shù),從算分類(lèi)工廠中獲取一個(gè)算分類(lèi)實(shí)例;最后房間服務(wù)器調(diào)用此算分實(shí)例的方法,完成算分操作。本發(fā)明使得算分的實(shí)現(xiàn)完全是可配置的,并且這種可配置的算分可以以插件的方式附加到游戲服務(wù)器中,修改一個(gè)已有的算分邏輯或者增加一個(gè)新的算分類(lèi)都不會(huì)對(duì)其他邏輯構(gòu)成任何影響。
文檔編號(hào)A63F1/18GK101884842SQ20091008408
公開(kāi)日2010年11月17日 申請(qǐng)日期2009年5月14日 優(yōu)先權(quán)日2009年5月14日
發(fā)明者劉立軍, 張守文, 王磊, 陶勇勝 申請(qǐng)人:灰熊(北京)科技有限公司