#!/usr/bin/python
|
# -*- coding: GBK -*-
|
#-------------------------------------------------------------------------------
|
#
|
#-------------------------------------------------------------------------------
|
#
|
##@package EventReport
|
#
|
# @todo:ʼþ»ã±¨
|
# @author hxp
|
# @date 2015-1-14
|
# @version 2.4
|
# @Note£º EventReport_EventReportÓ÷¨ µÚÒ»¸ö²ÎÊý´«postÄÚÈÝurlencode£¬µÚ2,3,4²»Ó㻵ÚÎå¸ö²ÎÊý0´ú±íget£¬1Ϊpost£»µÚÁù¸ö²ÎÊýΪurl
|
#
|
# @change: "2015-01-28 22:30" hxp ¹Ø±Õʼþ»ã±¨
|
# @change: "2015-02-06 20:40" Alee ʼþ»ã±¨·¢ËÍÖÁºÏ·þÖ÷·þ
|
# @change: "2015-06-08 20:30" hxp Ôö¼ÓchannelCode
|
# @change: "2015-07-13 14:00" hxp Ôö¼ÓpidÐÅÏ¢
|
# @change: "2016-07-18 19:00" hxp 9377¶À´úʼþ»ã±¨°æ
|
# @change: "2016-07-27 20:00" Alee Ð޸Ĵò¿ªÎļþ³¬Ê±¹Ø±Õ
|
# @change: "2016-07-30 11:30" hxp ¹Ø±ÕÎïÆ·¸ú×Ù
|
# @change: "2016-08-18 16:30" hxp ×Ô¶¨ÒåÈÎÎñʼþ
|
# @change: "2016-08-30 23:00" hxp ÁÄÌì¼à¿Ø
|
# @change: "2016-09-10 11:00" hxp ÁÄÌìÄÚÈÝÌæ»»»»ÐÐ
|
# @change: "2016-11-09 20:00" hxp Ôö¼Ó×Ô¶¨Òå¼Ç¼(×øÆï¡¢³á°ò¡¢³èÎï¡¢»õ±Ò½ø³ö¡¢³È×°)
|
# @change: "2017-06-08 19:30" hxp Ôö¼Ó×Ô¶¨Òå¼Ç¼(µãȯ¡¢Éñ±ø¡¢·ûÓ¡¡¢¸ÄÃû¡¢ÕæÆø)
|
# @change: "2017-07-01 15:30" hxp ƽ̨¸ÄΪ´ÓÍæ¼ÒÕ˺ÅÖÐÈ¡£¬Ö§³Ö»ì·þģʽ
|
# @change: "2017-07-04 15:00" hxp Ôö¼Ó»ì·þģʽÏ¿ÉÇø·Ö¸÷ƽ̨×ÔÉíÇø·þºÏ·þºóµÄƽ̨Ö÷·þID
|
# ÏêϸÃèÊö: ʼþ»ã±¨
|
#
|
#---------------------------------------------------------------------
|
#"""Version = 2017-07-04 15:00"""
|
#---------------------------------------------------------------------
|
|
import IPY_GameWorld
|
import DataRecordPack
|
import PlayerControl
|
import ReadChConfig
|
import ShareDefine
|
import GameWorld
|
import ChConfig
|
import CommFunc
|
import PlayerTJG
|
|
import datetime
|
import random
|
import time
|
import md5
|
import os
|
import re
|
import json
|
import urllib
|
EventFilepath = "D:\\EventServer\\PythonScribe\\EventLog\\"
|
|
g_wFileName = ""
|
g_writeHandle = None # ²»¿ÉÖ±½Óµ÷ÓÃ
|
|
Def_Custom_Events_Bug = "Bug" # ÓÎÏ·Bug
|
Def_Custom_Events_Suggest = "suggest" # ÓÎÏ·½¨Òé
|
Def_Custom_Events_Item = "Item" # ÎïÆ·¸ú×Ù
|
Def_Custom_Events_GetMail = "GetMail" # ÓʼþÁìÈ¡
|
Def_Custom_Events_CommonCard = "CommonCard_%s" # ͨÓÃÐÂÊÖ¿¨ÂëʹÓÃ, ²ÎÊýΪͨÓÃÂ뿨ºÅ
|
Def_Custom_Events_NewbieCard = "NewbieCard_%s" # ³£¹æÐÂÊÖ¿¨Ê¹ÓÃ, ²ÎÊýΪÀñ°üÀàÐÍ
|
Def_Custom_Events_MediaCard = "MediaCard_%s" # ÐÂýÌ忨ʹÓÃ, ²ÎÊýΪ¿¨ÀàÐÍ
|
|
g_whStartTime = 0 # ´´½¨Îļþʱ¼ä
|
Def_WriteTime = 2 # Îļþ³ÖÐøÐ´Èëʱ¼ä£º·ÖÖÓ
|
|
def OnTimeCloseScribeTxt():
|
global g_whStartTime
|
global g_writeHandle
|
global g_wFileName
|
try:
|
if g_whStartTime == 0:
|
return
|
|
#Îļþ´´½¨³¬¹ý
|
if time.time() - g_whStartTime < 60*(Def_WriteTime + 1):
|
return
|
|
if g_writeHandle == None:
|
return
|
g_writeHandle.close()
|
g_wFileName = ""
|
g_whStartTime = 0
|
except:
|
GameWorld.ErrLog("OnTimeCloseScribeTxt ³ö´í")
|
|
|
|
## ³õʼ»¯Ê¼þ
|
# @param None
|
# @return ÎÞ·µ»ØÖµ
|
def InitDllAppID():
|
|
appID = "mobile"
|
key = "mobile"
|
|
GameWorld.GetGameWorld().EventReport_SetEventReportParam(appID, key)
|
GameWorld.Log("³õʼ»¯Ê¼þ±¨¸æ: appID=%s,key=%s OK!" % (appID, key))
|
return
|
|
## ʼþ±¨¸æ¼Ç¼
|
# @param eventActionID ʼþid
|
# @param eventParam ʼþ²ÎÊý
|
# @param curPlayer
|
# @return None
|
def EventReport(eventActionID, eventParam, curPlayer=None, OperatorID=""):
|
# ×é³ÉÀý×Ó eventParam µÄ¸ñʽ±ØÐëÊÇ xx=yy&zz=cc
|
# "http://192.168.0.249:12000/event_receiver?EventID=3099&OperatorID=test&PlayerCount=102&Time=2018-02-08 18:30:30&ProductID=snxxz&RegionName=s1"
|
|
if not curPlayer and not OperatorID:
|
return
|
|
ProductID = ReadChConfig.GetPyMongoConfig("EventReport", "ProductID")
|
ReportUrl = ReadChConfig.GetPyMongoConfig("EventReport", "ReportUrl")
|
|
|
playerInfo = ""
|
if curPlayer:
|
#UTF8 ÐèҪת³Éurl±àÂë²Å¿ÉÓÃ
|
playerInfo = urllib.urlencode({"RoleID": curPlayer.GetName(),
|
"AccountID": GameWorld.GetPlatformAccID(curPlayer.GetAccID()),
|
"IP": curPlayer.GetIP(),
|
"Level": curPlayer.GetLV()})
|
|
OperatorID = GameWorld.GetPlayerPlatform(curPlayer)
|
RegionName = GameWorld.GetPlayerServerSID(curPlayer)
|
|
else:
|
# ºÏ·þÇé¿ö£¬Íæ¼ÒÈ¡×Ô¼º·þ·¢ËÍ£¬·ÇÍæ¼ÒÊý¾Ý°´Ö¸¶¨Æ½Ì¨ÅäÖ÷¢
|
sid = GameWorld.GetPlayerMainServerID(OperatorID)
|
if not sid:
|
GameWorld.ErrLog("GetPlayerMainServerID: %s-%s"%(OperatorID, sid))
|
return
|
RegionName = 's%s'%sid
|
|
if eventParam:
|
eventParam = "&%s"%eventParam
|
|
|
getUrl = "%s?ProductID=%s&OperatorID=%s&RegionName=%s&EventID=%s&%s&Time=%s%s"%(\
|
ReportUrl, ProductID, OperatorID, RegionName, eventActionID, playerInfo,
|
str(datetime.datetime.today()).split('.')[0], eventParam)
|
GameWorld.DebugLog("EventReport: %s"%getUrl)
|
|
# µÚÎå¸ö²ÎÊý0´ú±íget·¢ËÍ 1´ú±ípost
|
GameWorld.GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl)
|
return
|
|
|
## дʼþ±¨¸æÎļþ
|
# @param eventClass
|
# @return None
|
def WriteEvent(eventClass):
|
return
|
if GameWorld.IsCrossServer():
|
return
|
|
if eventClass.GetScribeEventName() not in ReadChConfig.GetEvalChConfig("EventReportID"):
|
return
|
|
if not os.path.isdir(EventFilepath):
|
os.makedirs(EventFilepath)
|
|
#³¢ÊÔдµ½Í¬Ò»¸öÎļþµ«ÊÇwindow »áÓÐbug£¬Ö»Äܸ÷×Ô³ÌÐò·Ö¿ªÐ´Èë
|
fp_w = GetWriteIO()
|
fp_w.write("%s\t%s\n"%(eventClass.GetScribeEventName(), eventClass.GetCurEventStr()))
|
fp_w.flush()
|
return
|
|
# ·ÖÖÓ×¼µãУ׼
|
def FixTime():
|
curTime = datetime.datetime.today()
|
curTime = curTime + datetime.timedelta(minutes=Def_WriteTime-curTime.minute%Def_WriteTime)
|
tmp = str(curTime).split(".")[0][:-3].replace(':', '-')
|
return tmp.replace(" ", "_")
|
|
def GetLogFileName(fileStr):
|
sessionid = md5.md5(str(random.random()) + str(time.time())).hexdigest()
|
return EventFilepath + sessionid + fileStr + '.log'
|
|
def GetWriteIO():
|
global g_wFileName
|
global g_writeHandle
|
global g_whStartTime
|
|
fileTime = FixTime()
|
if g_wFileName and fileTime in g_wFileName:
|
#µ±Ç°ÎļþÖ±½Ó·µ»Ø
|
return g_writeHandle
|
curFileName = GetLogFileName(fileTime)
|
|
if g_writeHandle != None:
|
#¹Ø±Õ¾ÉÎļþ
|
g_writeHandle.close()
|
|
g_wFileName = curFileName
|
g_writeHandle = open(g_wFileName, 'a+')
|
g_whStartTime = time.time()
|
return g_writeHandle
|
|
## =================================================================================================
|
|
# ÿ¸ö×ֶζ¼Ó¦¸ÃתΪ×Ö·û´®£¬²»È»join»á±¨´í
|
|
class ScribeEvent(object):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
self.product_slug = 'yhlz' # ÓÎÏ·±êÖ¾
|
self.agent_name = ReadChConfig.GetPyMongoConfig("platform", "PlatformName") # ƽ̨±êÖ¾
|
self.gameserver_no = ReadChConfig.GetPyMongoConfig("platform", "ServerID")[1:] # Çø·þ
|
self.time = "" #GameWorld.GetCurrentDataTimeStr()
|
|
def SetEventAgentInfo(self, accIDPlatform):
|
# ÉèÖôúÀíÔËÓªÉÌÐÅÏ¢
|
# @param accIDPlatform: ÕâÀïÈ¡Õ˺ÅËùÊôƽ̨£¬Ö§³Ö»ì·þ, Èç¹ûÈ¡²»µ½£¬ÔòÓÃĬÈÏÅäÖõÄÔËÓªÉÌÐÅÏ¢
|
if not accIDPlatform:
|
return
|
self.agent_name = accIDPlatform
|
self.gameserver_no = str(GameWorld.GetPlayerMainServerID(self.agent_name))
|
return
|
|
#¼´Ê¹ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
#±ÜÃâÐ޸ĸñʽµÄÇé¿ö£¬ÕâÀïͳһÐ޸ļ´¿É
|
def GetEventStr(self, tmpList):
|
return '\"%s\"'%'","'.join(tmpList)
|
|
# 3.3.1. entry£¨ÐÂÍæ¼Òµ¼È룩
|
class entry(ScribeEvent):
|
|
Def_EntryStep_CreatRole = 3
|
Def_EntryStep_FirstLogin = 4
|
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(entry, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.step = 0 # ²½ÖèÖµ
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.browser = "" # Íæ¼ÒʹÓõÄä¯ÀÀÆ÷
|
self.resolution = "" # Íæ¼ÒµÄ×ÀÃæ·Ö±æÂÊ£¬¸ñʽΪ¡¸¿í*¸ß¡¹
|
self.os = "" # Íæ¼ÒʹÓõIJÙ×÷ϵͳ
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.browser, self.resolution, self.os, str(self.step)]
|
|
return super(entry, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_CreateRole
|
|
# 3.3.2. login£¨µÇ¼£©
|
class login(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(login, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.session_id = "" # ȇȡID
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.browser = "" # Íæ¼ÒʹÓõÄä¯ÀÀÆ÷
|
self.resolution = "" # Íæ¼ÒµÄ×ÀÃæ·Ö±æÂÊ£¬¸ñʽΪ¡¸¿í*¸ß¡¹
|
self.os = "" # Íæ¼ÒʹÓõIJÙ×÷ϵͳ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.browser, self.resolution, self.os, self.time, self.chr_name,
|
str(self.chr_level), self.session_id]
|
|
return super(login, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_Login
|
|
|
# 3.3.3. session£¨»á»°¼Ç¼£©
|
# Íæ¼ÒµÇ³ö¡¢ÀëÏßµÄÊý¾Ý£¬ÅäºÏµÇ¼Êý¾ÝÊý¾ÝÖÐÐÄ¿Éͳ¼Æ³öÍæ¼ÒÔÚÏßʱ³¤
|
class session(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(session, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.session_id = "" # ȇȡID
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), self.session_id]
|
|
return super(session, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_Session
|
|
# 3.3.5. virtual©\cost£¨ÐéÄâ±ÒÏû·Ñ£©
|
# Íæ¼Ò²úÉúÏû·Ñ¼Ç¼¼´ÊÕ¼¯£»
|
class virtual_cost(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(virtual_cost, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.quantity = 0 # Ïû·ÑÊýÁ¿
|
self.price = 0 # Ïû·ÑµãµÄÐéÄâ±Òµ¥¼Û
|
self.reason_name = "" # Ïû·ÑµãÃû³Æ
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.balance = 0 # Íæ¼ÒÊ£ÓàÐéÄâ±Ò
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), str(self.quantity),
|
str(self.price), str(self.balance), self.reason_name]
|
|
return super(virtual_cost, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_VirtualCost
|
|
# 3.3.6. virtual©\reward£¨ÐéÄâ±ÒÔùËÍ£©
|
# Íæ¼Ò»ñµÃÐéÄâ±ÒÔùËÍʱ¼´ÊÕ¼¯£»
|
# ³ýÁËÕæÊµ³äÖµ¶©µ¥²úÉúµÄÐéÄâ±ÒÔö¼Ó¶¼Ó¦¸Ã¼ÆÈëµ½ÐéÄâ±ÒÔùËÍ
|
class virtual_reward(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(virtual_reward, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.virtual_amount = 0 # Ôö¼ÓµÄÐéÄâ±ÒÊýÁ¿
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.balance = 0 # Íæ¼ÒÊ£ÓàÐéÄâ±Ò
|
self.source = "" # »ñµÃ½±ÀøµÄ;¾¶
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), str(self.virtual_amount),
|
str(self.balance), self.source]
|
|
return super(virtual_reward, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_VirtualReward
|
|
# 3.3.12. virtual©\resource£¨ÐéÄâ×ÊÔ´²ú³öÓëÏûºÄ£©
|
# ²úÉúÏàÓ¦ÐéÄâ×ÊÔ´µÄÏû·Ñ¡¢Éú²ú¼Ç¼ʱ¼´ÊÕ¼¯¡£
|
# ÓÃÓÚͳ¼ÆÈκÎÐéÄâ×ÊÔ´Èç¸÷Àà¶þ¼¶»õ±ÒµÄ²ú³öÓëÏûºÄ
|
class virtual_resource(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(virtual_resource, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.type_name = "" # ÐéÄâ×ÊÔ´ÀàÐÍÃû³Æ
|
self.reason_name = "" # ×ÊÔ´µãÃû³Æ
|
self.quantity = 0 # ÐéÄâ×ÊÔ´²ú³ö/ÏûºÄµÄ´ÎÊý
|
self.price = 0 # ÐéÄâ×ÊÔ´²ú³ö/ÏûºÄµÄÊýÁ¿£¬Çø·ÖÕý¸º£¬ÕýֵΪ²ú³ö£¬¸ºÖµÎªÏûºÄ
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), self.type_name,
|
self.reason_name, str(self.quantity), str(self.price)]
|
|
return super(virtual_resource, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_VirtualResource
|
|
# 3.3.9. custom©\events£¨×Ô¶¨Òåʼþ£©
|
# ÓÃÓÚͳ¼ÆÈÎºÎÆÚÍûÈ¥¸ú×ÙµÄÊý¾Ý
|
class custom_events(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(custom_events, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.event_name = "" # ʼþÃû³Æ
|
self.session_id = "" # ȇȡID
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.comments = "" # ±¸×¢»ò¸½¼ÓÐÅÏ¢ char(255)
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), self.event_name,
|
self.comments, self.session_id]
|
|
return super(custom_events, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_CustomEvents
|
|
# 3.3.10. mission©\log£¨ÈÎÎñ¼Ç¼£©
|
# ¸ú×ÙÍæ¼ÒÈÎÎñ½ÓÈ¡¡¢Íê³É¡¢Ê§°ÜÇé¿ö£¬ÒÔ¼°ÓÃÓÚÁ÷Ê§Íæ¼ÒµÄÈÎÎñ·ÖÎöµÈͳ¼Æ¡£
|
# ÈÎÎñ½Óȡʱ¼´ÊÕ¼¯ type=0 µÄÊý¾Ý£¬ÈÎÎñ½áÊøÇҳɹ¦Ê±¼´ÊÕ¼¯ type=1¡¢mission_result=1 µÄÊý¾Ý£¬ÈÎÎñ½áÊøÇÒʧ°Üʱ¼´ÊÕ¼¯ type=1¡¢mission_result=0 µÄÊý¾Ý¡£
|
class missionlog(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(missionlog, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.type = 0 # 0 ÈÎÎñ¿ªÊ¼ 1 ÈÎÎñ½áÊø
|
self.mission_name = "" # ÈÎÎñÃû
|
self.session_id = "" # ȇȡID
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.mission_result = 0 # µ±ÈÎÎñ½áÊø£¬ÈÎÎñ½á¹û 0£ºÊ§°Ü 1£º³É¹¦
|
self.mission_reason = "" # µ±ÈÎÎñ½áÊøÇÒÈÎÎñʧ°ÜʱµÄÔÒò
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
|
self.scribeEventName = ShareDefine.Def_UserAction_MissionLog
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), str(self.type), self.mission_name,
|
str(self.mission_result), self.mission_reason, self.session_id]
|
|
return super(missionlog, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return self.scribeEventName
|
|
# 3.3.11. level©\up£¨Éý¼¶¼Ç¼£©
|
# ÓÃÓÚÍæ¼ÒÉý¼¶Ê±³¤µÈµÈ¼¶Ïà¹ØÍ³¼Æ¡£
|
# µÈ¼¶·¢Éú±ä»¯Ê±¼´ÊÕ¼¯£»
|
# Ҫͳ¼Æ 2 ¼¶µÄÉý¼¶Ê±³¤±ØÐëÒªÓÐ 1 ¼¶µÄÉý¼¶Êý¾Ý£¬Òò´Ë¸Õ´´½¨Íê½ÇɫʱµÄ 1 ¼¶µÄÊý¾ÝÒ²ÐèÒªÊÕ¼¯¡£
|
class levelup(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(levelup, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.session_id = "" # ȇȡID
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), self.session_id]
|
|
return super(levelup, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_LVUP
|
|
# 3.3.13. chat-log £¨ÁÄÌìÏûÏ¢£©
|
# ÓÃÓÚ¼à¿ØÍæ¼ÒÁÄÌì
|
class chat_log(ScribeEvent):
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(chat_log, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
self.content = "" # ÁÄÌìÄÚÈÝ
|
self.cmc_name = "" # ÁÄÌìÆµµÀ±êʶ
|
|
#·Ç±ØÐë×Ö¶Î
|
self.ip = "" # IP µØÖ·
|
self.account_name = "" # Õ˺ŵǼÃû
|
self.account_type = 0 # Õ˺ÅÀàÐÍ
|
self.chr_level = 0 # Íæ¼Ò½ÇÉ«µÈ¼¶
|
self.object = "" # ˽ÁĶÔÏó
|
self.addinfo = "" # ¶îÍâÐÅÏ¢
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.ip, self.gameserver_no, self.account_id, self.account_name,
|
str(self.account_type), self.time, self.chr_name, str(self.chr_level), self.object, self.content,
|
self.addinfo, self.cmc_name]
|
|
return super(chat_log, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_ChatLog
|
|
|
## =================================================================================================
|
|
#===============================================================================
|
# def WriteEvent_entry_firstlogin(curPlayer, browser, resolution, pcOS):
|
# entryEvent = entry()
|
# entryEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# entryEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# entryEvent.step = entryEvent.Def_EntryStep_FirstLogin
|
# entryEvent.ip = curPlayer.GetIP()
|
# entryEvent.account_name = entryEvent.account_id
|
# entryEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# entryEvent.browser = browser
|
# entryEvent.resolution = resolution
|
# entryEvent.os = pcOS
|
# WriteEvent(entryEvent)
|
# return
|
#===============================================================================
|
|
def WriteEvent_login(curPlayer):
|
if curPlayer.GetIP() == "127.0.0.1":
|
return
|
EventReport(ShareDefine.Def_UserAction_Login, "Job=%s&SessionID=%s"%(curPlayer.GetJob(), GameWorld.GetSessionID(curPlayer)), curPlayer)
|
|
return
|
|
# ÀëÏßÊý¾Ý
|
def WriteEvent_session(curPlayer):
|
seconds = 0
|
if PlayerTJG.GetIsTJG(curPlayer):
|
return
|
else:
|
logoffTimeStr = curPlayer.GetLogoffTime().strip()
|
loginTimeStr = curPlayer.GetLoginTime().strip()
|
if logoffTimeStr and loginTimeStr:
|
passTimes = GameWorld.GetDateTimeByStr(logoffTimeStr) - GameWorld.GetDateTimeByStr(loginTimeStr)
|
seconds = passTimes.seconds
|
EventReport(ShareDefine.Def_UserAction_Session, "OnlineTime=%s&SessionID=%s"%(seconds, GameWorld.GetSessionID(curPlayer)), curPlayer)
|
#===========================================================================
|
# sessionEvent = session()
|
# sessionEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# sessionEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# sessionEvent.session_id = GameWorld.GetSessionID(curPlayer)
|
# sessionEvent.ip = curPlayer.GetIP()
|
# sessionEvent.account_name = sessionEvent.account_id
|
# sessionEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# sessionEvent.chr_name = curPlayer.GetPlayerName()
|
# sessionEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# WriteEvent(sessionEvent)
|
#===========================================================================
|
return
|
|
## дÐéÄâÔª±¦Ïû·Ñ¼Ç¼
|
# @param quantity: Ïû·ÑÊýÁ¿
|
# @param price: Ïû·ÑµãµÄÐéÄâ±Òµ¥¼Û
|
# @param reason_name: Ïû·ÑµãÃû³Æ
|
def WriteEvent_virtual_cost(curPlayer, quantity, price, reason_name):
|
'''
|
ÎÊ£ºÐéÄâÏû·ÑµãµÄÁ£¶È¼¸´óºÃ£¿
|
´ð£ºÊý¾Ý±¨±í¶ÔÐéÄâÏû·ÑµÄͳ¼ÆÖ§³ÖÁ½¼¶£¬¼´Ïû·Ñµã¼°Æä¸¸ÀàÏû·Ñµã·Ö×飬¾Ý´Ë£º
|
¡ñ ½¨ÒéÊÇÏû·Ñ;¾¶¼ÓÉÏÏû·Ñ¶ÔÏ󣬱ÈÈ硸É̵깺Âò£ºÈýʬÄÔÉñµ¤¡¹£¬¶øºó½«¸ÃÏû·ÑµãÔÚÏû·Ñµã·Ö×éÀï¹éΪ¡¸É̵깺Âò¡¹£»
|
¡ñ ²»Òª¼ÓÉÏÏû·ÑÕßÈ硸Ҷ¹Âº®£ºÉ̵깺Âò£ºÈýʬÄÔÉñµ¤¡¹£»
|
¡ñ ²»Òª¼ÓÉÏÏû·Ñ¶ÔÏóµÈ¼¶È硸ǿ»¯£ºÁøÒ¶µ¶ [9¼¶]¡¹¡£
|
'''
|
#===========================================================================
|
# virtualCostEvent = virtual_cost()
|
# virtualCostEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# virtualCostEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# virtualCostEvent.quantity = quantity
|
# virtualCostEvent.price = price
|
# virtualCostEvent.balance = curPlayer.GetGold()
|
# virtualCostEvent.reason_name = reason_name
|
# virtualCostEvent.ip = curPlayer.GetIP()
|
# virtualCostEvent.account_name = virtualCostEvent.account_id
|
# virtualCostEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# virtualCostEvent.chr_name = curPlayer.GetPlayerName()
|
# virtualCostEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# WriteEvent(virtualCostEvent)
|
#===========================================================================
|
return
|
|
## дÐéÄâÔª±¦ÔùËÍ»ñµÃ¼Ç¼,º¬³äÖµ¿É²éµ½Õ˶һ»³ÉÐéÄâ±Òʱ¼ä
|
# @param virtual_reward: Ôö¼ÓµÄÐéÄâ±ÒÊýÁ¿
|
# @param source: »ñµÃ½±ÀøµÄ;¾¶
|
def WriteEvent_virtual_reward(curPlayer, virtual_amount, source):
|
#===========================================================================
|
# virtualRewardEvent = virtual_reward()
|
# virtualRewardEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# virtualRewardEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# virtualRewardEvent.virtual_amount = virtual_amount
|
# virtualRewardEvent.balance = curPlayer.GetGold()
|
# virtualRewardEvent.source = source
|
# virtualRewardEvent.ip = curPlayer.GetIP()
|
# virtualRewardEvent.account_name = virtualRewardEvent.account_id
|
# virtualRewardEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# virtualRewardEvent.chr_name = curPlayer.GetPlayerName()
|
# virtualRewardEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# WriteEvent(virtualRewardEvent)
|
#===========================================================================
|
return
|
|
## д¶þ¼¶»õ±ÒµÄ²ú³öÓëÏûºÄ¼Ç¼
|
# @param type_name: ÐéÄâ×ÊÔ´ÀàÐÍÃû³Æ, Èç½ð±Ò
|
# @param reason_name: ×ÊÔ´µãÃû³Æ, ÈçË¢ÐÂÈÙÓþÉ̵ê
|
# @param quantity: ÐéÄâ×ÊÔ´²ú³ö/ÏûºÄµÄ´ÎÊý
|
# @param price: ÐéÄâ×ÊÔ´²ú³ö/ÏûºÄµÄÊýÁ¿µ¥¼Û£¬Çø·ÖÕý¸º£¬ÕýֵΪ²ú³ö£¬¸ºÖµÎªÏûºÄ
|
# @param flow 0 ´ú±íÏû·Ñ 1 ´ú±í²ú³ö
|
def WriteEvent_virtual_resource(curPlayer, type_name, reason_name, quantity, price, flow, extraDict={}):
|
|
#±ÜÃâ¼Ç¼̫¶àÐÅÏ¢
|
if type_name in [IPY_GameWorld.TYPE_Price_Silver_Money] and abs(quantity * price) < ChConfig.Def_DRRecord_Min_Silver:
|
return
|
# ±êʶ´Ë»õ±ÒÊÇ·ñÊÇÒ»¼¶»õ±Ò£¨³äÖµ£©
|
Recharged = 1 if type_name == IPY_GameWorld.TYPE_Price_Gold_Money else 0
|
#===========================================================================
|
# virtualResourceEvent = virtual_resource()
|
# virtualResourceEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# virtualResourceEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# virtualResourceEvent.type_name = str(type_name)
|
# virtualResourceEvent.reason_name = reason_name
|
# virtualResourceEvent.quantity = quantity
|
# virtualResourceEvent.price = price
|
# virtualResourceEvent.ip = curPlayer.GetIP()
|
# virtualResourceEvent.account_name = virtualResourceEvent.account_id
|
# virtualResourceEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# virtualResourceEvent.chr_name = curPlayer.GetPlayerName()
|
# virtualResourceEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# WriteEvent(virtualResourceEvent)
|
#===========================================================================
|
# OperatorExtra json ¸ñʽ Ïû·Ñ¾ßÌåÔÒò
|
EventReport(ShareDefine.Def_UserAction_VirtualResource,
|
"Price=%s&Quantity=%s&OperateType=%s&CurrencyType=%s&Recharged=%s&Flow=%s&Balance=%s&OperatorExtra=%s"%(
|
price, quantity, reason_name, type_name, Recharged, flow,
|
PlayerControl.GetMoney(curPlayer, type_name), json.dumps(extraDict, ensure_ascii=False)), curPlayer)
|
return
|
|
## дÈÎÎñʼþ¼Ç¼
|
# @param startType: 0 ÈÎÎñ¿ªÊ¼ 1 ÈÎÎñ½áÊø
|
# @param isFinish: µ±ÈÎÎñ½áÊø£¬ÈÎÎñ½á¹û 0£ºÊ§°Ü 1£º³É¹¦
|
# @param failReason: µ±ÈÎÎñ½áÊøÇÒÈÎÎñʧ°ÜʱµÄÔÒò
|
def WriteEvent_mission_log(curPlayer, missionData, startType, isFinish=0, failReason=""):
|
if startType not in [0, 1] or isFinish not in [0, 1]:
|
return
|
|
if not missionData:
|
return
|
|
#missionName = "0%s%s" % (missionData.ID, missionData.Name)
|
missionName = missionData.ID
|
__WriteEvent_mission_log(curPlayer, startType, missionName, isFinish, failReason)
|
return
|
|
def WriteFuncCMEAcceptable(curPlayer, funcID):
|
return
|
if funcID not in ChConfig.FuncCMEDict:
|
return
|
WriteEvent_custom_mission_log(curPlayer, ChConfig.FuncCMEDict[funcID], ChConfig.CME_Log_Acceptable)
|
return True
|
|
def WriteEvent_MWSuccess(curPlayer, mwID, succID, logType, isFinish=0):
|
'''д×Ô¶¨ÒåÈÎÎñ - ·¨±¦³É¾Íʼþ, ʼþID¸ñʽ: 91+·¨±¦ID+ÖÁÉÙ4λµÄ³É¾ÍID
|
'''
|
cmeType = "91%d%04d" % (mwID, succID)
|
WriteEvent_custom_mission_log(curPlayer, cmeType, logType, isFinish)
|
return
|
|
def WriteEvent_FB(curPlayer, mapID, funcLineID, logType, joinType=0, isFinish=0, failReason=""):
|
'''д×Ô¶¨ÒåÈÎÎñ - ¸±±¾Ê¼þ, ʼþID¸ñʽ: 90+mapID+joinType+funcLineID
|
@param joinType: 0-ĬÈÏÎÞ; 1-µ¥ÈË; 2-¶àÈË; 3-ÖúÕ½; ×¢Òâµ¥È˶ÓÎéËãµ¥ÈË
|
'''
|
cmeType = "90%d%d%02d" % (mapID, joinType, funcLineID)
|
WriteEvent_custom_mission_log(curPlayer, cmeType, logType, isFinish, failReason=failReason)
|
return
|
|
## д×Ô¶¨ÒåÈÎÎñʼþ¼Ç¼
|
# @param cmeType: ×Ô¶¨ÒåÀàÐÍ, ¶ÔÓ¦ ChConfig.CME_Type_List
|
# @param logType: ¼Ç¼ÀàÐÍ, ¶ÔÓ¦ ChConfig.CME_Log_Type_List
|
# @param cmeInfoEx: À©Õ¹×Ô¶¨ÒåÐÅÏ¢, Ò»°ãÓÃÓÚÐèÒª·Ö×ÓÏî¼Ç¼µÄÀàÐÍ
|
# @param isFinish: µ±Ê¼þ½áÊøÊ±½á¹û 0£ºÊ§°Ü 1£º³É¹¦
|
# @param failReason: µ±Ê¼þ½áÊøÊ±Ê§°ÜµÄÔÒò
|
def WriteEvent_custom_mission_log(curPlayer, cmeType, logType, isFinish=0, failReason="", cmeInfoEx=None):
|
#if cmeType not in ChConfig.CME_Type_List:
|
# return
|
|
if logType not in ChConfig.CME_Log_Type_List:
|
return
|
|
startType = 1 if logType == ChConfig.CME_Log_End else 0
|
#===========================================================================
|
# missionName = ChConfig.CME_Type_Dict.get(cmeType, "δ֪")
|
# if cmeInfoEx != None:
|
# missionName = "%s:%s" % (missionName, cmeInfoEx)
|
# if logType == ChConfig.CME_Log_Acceptable:
|
# missionName = "%s_¿ÉÌôÕ½" % missionName
|
#===========================================================================
|
|
missionName = cmeType
|
__WriteEvent_mission_log(curPlayer, startType, missionName, isFinish, failReason, cmeType in ChConfig.CME_Ex_Log_List)
|
return
|
|
## дÈÎÎñʼþ¼Ç¼
|
# @param startType: 0 ÈÎÎñ¿ªÊ¼ 1 ÈÎÎñ½áÊø
|
# @param missionName: ÈÎÎñÃû
|
# @param isFinish: µ±ÈÎÎñ½áÊø£¬ÈÎÎñ½á¹û 0£ºÊ§°Ü 1£º³É¹¦
|
# @param failReason: µ±ÈÎÎñ½áÊøÇÒÈÎÎñʧ°ÜʱµÄÔÒò
|
def __WriteEvent_mission_log(curPlayer, startType, missionName, isFinish, failReason, isExLog=False):
|
isFinish = 1 if isFinish else 0
|
exDict = {"Fail":failReason}
|
resultMsg = json.dumps(exDict, ensure_ascii=False)
|
EventReport(ShareDefine.Def_UserAction_MissionLog,
|
"MissionStep=%s&MissionID=%s&MissionResult=%s&MissionExtra=%s"%(startType, missionName, isFinish, resultMsg), curPlayer)
|
#===========================================================================
|
# missionlogEvent = missionlog()
|
# missionlogEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# missionlogEvent.scribeEventName = ShareDefine.Def_UserAction_ExMissionLog if isExLog else \
|
# ShareDefine.Def_UserAction_MissionLog
|
# missionlogEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# missionlogEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# missionlogEvent.type = startType
|
# missionlogEvent.mission_name = missionName
|
# missionlogEvent.session_id = GameWorld.GetSessionID(curPlayer)
|
#
|
# missionlogEvent.ip = curPlayer.GetIP()
|
# missionlogEvent.account_name = missionlogEvent.account_id
|
# missionlogEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# missionlogEvent.chr_name = curPlayer.GetPlayerName()
|
# missionlogEvent.mission_result = isFinish
|
# missionlogEvent.mission_reason = failReason
|
# WriteEvent(missionlogEvent)
|
#===========================================================================
|
return
|
|
def WriteEvent_level_up(curPlayer):
|
EventReport(ShareDefine.Def_UserAction_LVUP, "", curPlayer)
|
#===========================================================================
|
# levelupEvent = levelup()
|
# levelupEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# levelupEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# levelupEvent.session_id = GameWorld.GetSessionID(curPlayer)
|
# levelupEvent.ip = curPlayer.GetIP()
|
# levelupEvent.account_name = levelupEvent.account_id
|
# levelupEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# levelupEvent.chr_name = curPlayer.GetPlayerName()
|
# levelupEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# WriteEvent(levelupEvent)
|
#===========================================================================
|
return
|
|
def WriteEvent_chat_log(curPlayer, content, cmc_name, tagName="", addinfo=""):
|
return
|
#===========================================================================
|
# '''
|
# @todo: дÁÄÌì¼à¿Ø¼Ç¼
|
# @param content: ÁÄÌìÄÚÈÝ
|
# @param cmc_name: ÁÄÌìÆµµÀ±êʶ
|
# @param tagName: ˽ÁĶÔÏó
|
# @param addinfo: ¶îÍâÐÅÏ¢
|
# '''
|
# chatlogEvent = chat_log()
|
# chatlogEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# chatlogEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# chatlogEvent.chr_name = curPlayer.GetName()
|
# chatlogEvent.content = __GetEventChatContent(content)
|
# chatlogEvent.cmc_name = cmc_name
|
# chatlogEvent.ip = curPlayer.GetIP()
|
# chatlogEvent.account_name = chatlogEvent.account_id
|
# chatlogEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# chatlogEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# chatlogEvent.object = tagName
|
# chatlogEvent.addinfo = addinfo
|
# WriteEvent(chatlogEvent)
|
#===========================================================================
|
return
|
|
def __GetEventChatContent(content):
|
'''
|
<a color="255,255,0" href="GOTO 10000,74,60">[µØÍ¼:ĺ¹âÖ®³Ç(74,60)]</a>
|
<A color="205,0,0" onmouseover="ShowInfo ITEM,55986" DATA="07 04 01 00 B2 DA 00 00 00 01 00 01
|
28 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
|
00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 3C 00 00 00 7B 27 32 38 27 3A 5B
|
27 31 30 32 33 34 27 5D 2C 27 31 39 27 3A 5B 27 33 35 34 27 2C 27 38 35 36 27 2C 27 33 35
|
34 27 2C 27 37 35 38 27 2C 27 39 35 31 27 2C 27 31 30 35 32 27 5D 7D 04 00 00 00 00 00 00
|
00 00 00 00 00 00 00 00 00 00 ">[ÉñÊ¥µÄ°ÁÊÀÖ®¹ +40]</a>
|
'''
|
tempMatch = re.search("<a color=.*?>.*?</a>", content)
|
if tempMatch:
|
tempStr = tempMatch.group()
|
markIndex = tempStr.index(">") + 1
|
repStr = tempStr[markIndex:tempStr.index("<", markIndex)]
|
content = content.replace(tempStr, repStr)
|
|
tempMatch = re.search("<A color=.*?>.*?</a>", content)
|
if tempMatch:
|
tempStr = tempMatch.group()
|
markIndex = tempStr.index(">") + 1
|
repStr = tempStr[markIndex:tempStr.index("<", markIndex)]
|
content = content.replace(tempStr, repStr)
|
|
# Ìæ»»»»ÐÐ
|
content = content.replace("\r", "")
|
content = content.replace("\n", "")
|
return content
|
|
## д×Ô¶¨Òåʼþ¼Ç¼
|
# @param event_name: ʼþÃû³Æ
|
# @param comments: ±¸×¢»ò¸½¼ÓÐÅÏ¢
|
def WriteEvent_custom_events(curPlayer, event_name, comments):
|
#===========================================================================
|
# customEvent = custom_events()
|
# customEvent.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# customEvent.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# customEvent.event_name = event_name
|
# customEvent.session_id = GameWorld.GetSessionID(curPlayer)
|
#
|
# customEvent.ip = curPlayer.GetIP()
|
# customEvent.account_name = customEvent.account_id
|
# customEvent.account_type = GameWorld.GetAccountType(curPlayer)
|
# customEvent.chr_name = curPlayer.GetPlayerName()
|
# customEvent.chr_level = GetScribeEvent_chr_level(curPlayer)
|
# customEvent.comments = CommFunc.GetStrCutoff(comments, 255)
|
# WriteEvent(customEvent)
|
#===========================================================================
|
return
|
|
#// A1 01 Íæ¼ÒµçÄÔÐÅÏ¢ #tagCMPCInfo
|
#
|
#struct tagCMPCInfo
|
#{
|
# tagHead Head;
|
# BYTE PCOSLen;
|
# char PCOS[PCOSLen]; // ²Ù×÷ϵͳ
|
# BYTE ResolutionLen;
|
# char Resolution[ResolutionLen]; // ·Ö±æÂÊ
|
# BYTE BrowserLen;
|
# char Browser[BrowserLen]; // ä¯ÀÀÆ÷
|
# BYTE ScribeTypeLen;
|
# char ScribeType[ScribeTypeLen]; // ¼Ç¼ÀàÐÍ
|
# BYTE ScribeDataLen;
|
# char ScribeData[ScribeDataLen]; // ¼Ç¼À©Õ¹ÐÅÏ¢
|
#};
|
def ReceiveClientPCInfo(index, clientData, tick):
|
#===========================================================================
|
# curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
|
# PCOS = clientData.PCOS
|
# Resolution = clientData.Resolution
|
# Browser = clientData.Browser
|
# ScribeType = clientData.ScribeType
|
# #ScribeData = clientData.ScribeData
|
#
|
# GameWorld.DebugLog("ReceiveClientPCInfo %s" % ScribeType)
|
# GameWorld.DebugLog(" PCOS=%s" % PCOS)
|
# GameWorld.DebugLog(" Resolution=%s" % Resolution)
|
# GameWorld.DebugLog(" Browser=%s" % Browser)
|
#
|
# # ת»¯Îª¶Ô·½ËùÐè¸ñʽ
|
# if PCOS and "Windows" in PCOS:
|
# PCOS = " ".join(PCOS.split(" ")[:2])
|
#
|
# # ת»¯Îª¶Ô·½ËùÐè¸ñʽ
|
# if Resolution:
|
# Resolution = "%s*%s" % eval(Resolution)
|
#
|
# if ScribeType == ShareDefine.Def_UserAction_Login:
|
# firstLogin = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FirstLogin)
|
# if not firstLogin:
|
# PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FirstLogin, 1)
|
# WriteEvent_entry_firstlogin(curPlayer, Browser, Resolution, PCOS)
|
# if curPlayer.GetLV() == 1:
|
# WriteEvent_level_up(curPlayer) # Ê׵Ƿ¢ËÍÒ»´Î1¼¶Êý¾Ý
|
# GameWorld.DebugLog(" entry_firstlogin")
|
#
|
# WriteEvent_login(curPlayer, Browser, Resolution, PCOS)
|
#===========================================================================
|
|
return
|
|
#// A2 19 ÓÎÏ·½¨ÒéÊÕ¼¯ #tagCMAdviceSubmit
|
#
|
#struct tagCMAdviceSubmit
|
#{
|
# tagHead Head;
|
# BYTE Type; //Ìá½»ÀàÐÍ
|
# WORD Len;
|
# char Content[Len]; //size = Len
|
#};
|
def OnSubmitBugSuggest(index, clientData, tick):
|
#===========================================================================
|
# curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
|
# subType = clientData.Type
|
# content = clientData.Content
|
# eventName = Def_Custom_Events_Bug if subType == 0 else Def_Custom_Events_Suggest
|
# WriteEvent_custom_events(curPlayer, eventName, content)
|
# DataRecordPack.DR_BugSuggest(curPlayer, eventName, content)
|
#===========================================================================
|
return
|
|
def GetScribeEvent_chr_level(curPlayer):
|
transCnt, showLV = GameWorld.GetClientLV(curPlayer)
|
return transCnt * 1000 + showLV
|
|
|
## -------------------------------------- À©Õ¹×Ô¶¨Òå ---------------------------------------
|
|
class horse_class(ScribeEvent):
|
# ×øÆï½ø½×¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(horse_class, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.bef_class_lv = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄ×øÆïµÈ½×, 0´ú±í1½×
|
self.bef_exp = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄ×øÆïµÈ½×ÐÇÊýµÄ¾ÑéÖµ
|
self.cost_item_cnt = 0 # ´Ë´Î½ø½×ÏûºÄµÄ½ø½×µÀ¾ßÊýÁ¿
|
self.aft_class_lv = 0 # ´Ë´Î½ø½×²Ù×÷ºóµÄ×øÆïµÈ½×, 0´ú±í1½×
|
self.aft_exp = 0 # ´Ë´Î½ø½×²Ù×÷ºóµÄ×øÆïµÈ½×ÐÇÊýµÄ¾ÑéÖµ
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
str(self.bef_class_lv), str(self.bef_exp), str(self.cost_item_cnt),
|
str(self.aft_class_lv), str(self.aft_exp), self.time]
|
|
return super(horse_class, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_HorseClass
|
|
def WriteEvent_horse_class(curPlayer, befClassLV, befExp, costCnt, aftClassLV, aftExp):
|
## Ð´×øÆï½ø½×¼Ç¼
|
#===========================================================================
|
# horseClass = horse_class()
|
# horseClass.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# horseClass.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# horseClass.chr_name = curPlayer.GetPlayerName()
|
# horseClass.bef_class_lv = befClassLV
|
# horseClass.bef_exp = befExp
|
# horseClass.cost_item_cnt = costCnt
|
# horseClass.aft_class_lv = aftClassLV
|
# horseClass.aft_exp = aftExp
|
# WriteEvent(horseClass)
|
#===========================================================================
|
return
|
|
class wing_class(ScribeEvent):
|
# ³á°ò½ø½×¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(wing_class, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.bef_class_lv = 0 # µ±Ç°³á°òµÈ½×, 0´ú±í1½×
|
self.bef_exp = 0 # ½ø½×²Ù×÷ǰµÄ×£¸£Öµ
|
self.cost_item_cnt = 0 # ´Ë´Î½ø½×ÏûºÄµÄ½ø½×µÀ¾ßÊýÁ¿
|
self.aft_class_lv = 0 # ´Ë´Î½ø½×²Ù×÷ºó³á°òµÄµÈ½×, 0´ú±í1½×
|
self.aft_exp = 0 # ½ø½×²Ù×÷ºóµÄ×£¸£Öµ
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
str(self.bef_class_lv), str(self.bef_exp), str(self.cost_item_cnt),
|
str(self.aft_class_lv), str(self.aft_exp), self.time]
|
|
return super(wing_class, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_WingClass
|
|
def WriteEvent_wing_class(curPlayer, befClassLV, befExp, costCnt, aftClassLV, aftExp):
|
## д³á°ò½ø½×¼Ç¼
|
#===========================================================================
|
# wingClass = wing_class()
|
# wingClass.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# wingClass.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# wingClass.chr_name = curPlayer.GetPlayerName()
|
# wingClass.bef_class_lv = befClassLV
|
# wingClass.bef_exp = befExp
|
# wingClass.cost_item_cnt = costCnt
|
# wingClass.aft_class_lv = aftClassLV
|
# wingClass.aft_exp = aftExp
|
# WriteEvent(wingClass)
|
#===========================================================================
|
return
|
|
class pet_lv(ScribeEvent):
|
# ³èÎïÉý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(pet_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.bef_lv = 0 # Éý¼¶Ç°µÈ¼¶, 0´ú±í1ÐÇ
|
self.aft_lv = 0 # ´Ë´ÎÉý¼¶²Ù×÷ºóµÈ¼¶
|
self.bef_exp = 0 ## ´Ë´Î½ø½×²Ù×÷ǰµÄ¾ÑéÖµ
|
self.aft_exp = 0 ## ´Ë´Î½ø½×²Ù×÷ºóµÄ¾ÑéÖµ
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
str(self.bef_lv), str(self.aft_lv), str(self.bef_exp), str(self.aft_exp), self.time]
|
|
return super(pet_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_PetLV
|
|
def WriteEvent_pet_lv(curPlayer, befLV, aftLV, befExp, aftExp):
|
## д³èÎïÉý¼¶¼Ç¼
|
#===========================================================================
|
# petLV = pet_lv()
|
# petLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# petLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# petLV.chr_name = curPlayer.GetPlayerName()
|
# petLV.bef_lv = befLV
|
# petLV.aft_lv = aftLV
|
# petLV.bef_exp = befExp
|
# petLV.aft_exp = aftExp
|
# WriteEvent(petLV)
|
#===========================================================================
|
return
|
|
class pet_class(ScribeEvent):
|
# ³èÎï½ø½×¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(pet_class, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.pet_name = "" # ³èÎïÃû³Æ
|
self.bef_class_lv = 0 # ²Ù×÷ǰµÄµÈ½×, 0´ú±í1½×
|
self.bef_exp = 0 # ²Ù×÷ǰµÄ×£¸£Öµ
|
self.aft_class_lv = 0 # ´Ë´Î½ø½×²Ù×÷ºóµÄµÈ½×
|
self.aft_exp = 0 # ½ø½×²Ù×÷ºóµÄ×£¸£Öµ
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.pet_name, str(self.bef_class_lv), str(self.bef_exp),
|
str(self.aft_class_lv), str(self.aft_exp), self.time]
|
|
return super(pet_class, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_PetClass
|
|
def WriteEvent_pet_class(curPlayer, petName, befClassLV, befExp, aftClassLV, aftExp):
|
## д³èÎï½ø½×¼Ç¼
|
#===========================================================================
|
# petLV = pet_class()
|
# petLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# petLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# petLV.chr_name = curPlayer.GetPlayerName()
|
# petLV.pet_name = petName
|
# petLV.bef_class_lv = befClassLV
|
# petLV.bef_exp = befExp
|
# petLV.aft_class_lv = aftClassLV
|
# petLV.aft_exp = aftExp
|
# WriteEvent(petLV)
|
#===========================================================================
|
return
|
|
class give_money(ScribeEvent):
|
# »õ±Ò²ú³ö¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(give_money, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.source = "" # À´Ô´
|
self.type_name = "" # »õ±ÒÃû³Æ
|
self.addMoney = 0 # ²ú³öÊýÁ¿
|
self.total_money = 0 # Ê£Óà»õ±Ò×ÜÁ¿
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.source, self.type_name, str(self.addMoney), str(self.total_money), self.time]
|
|
return super(give_money, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_GiveMoney
|
|
def WriteEvent_give_money(curPlayer, source, typeName, addMoney, totalMoney):
|
## д»õ±Ò²ú³ö¼Ç¼
|
#===========================================================================
|
# giveMoney = give_money()
|
# giveMoney.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# giveMoney.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# giveMoney.chr_name = curPlayer.GetPlayerName()
|
# giveMoney.source = source
|
# giveMoney.type_name = typeName
|
# giveMoney.addMoney = addMoney
|
# giveMoney.total_money = totalMoney
|
# WriteEvent(giveMoney)
|
#===========================================================================
|
return
|
|
class pay_money(ScribeEvent):
|
# »õ±ÒÏûºÄ¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(pay_money, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.reason_name = "" # Ïû·Ñµã
|
self.type_name = "" # »õ±ÒÃû³Æ
|
self.costmoney = 0 # ÏûºÄÊýÁ¿
|
self.total_money = 0 # Ê£Óà»õ±Ò×ÜÁ¿
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.reason_name, self.type_name, str(self.costmoney), str(self.total_money), self.time]
|
|
return super(pay_money, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_PayMoney
|
|
def WriteEvent_pay_money(curPlayer, reasonName, typeName, costMoney, totalMoney):
|
## д»õ±ÒÏûºÄ¼Ç¼
|
#===========================================================================
|
# payMoney = pay_money()
|
# payMoney.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# payMoney.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# payMoney.chr_name = curPlayer.GetPlayerName()
|
# payMoney.reason_name = reasonName
|
# payMoney.type_name = typeName
|
# payMoney.costmoney = costMoney
|
# payMoney.total_money = totalMoney
|
# WriteEvent(payMoney)
|
#===========================================================================
|
return
|
|
class equip_item(ScribeEvent):
|
# Íæ¼Ò×°±¸Í³¼Æ
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(equip_item, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.equip_place = 0 # ×°±¸Î»
|
self.class_lv = 0 # ×°±¸½×Êý, 0ÐÂÊÖ½×, 1-1½×
|
self.item_quality = 0 # Æ·ÖÊ
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
str(self.equip_place), str(self.class_lv), str(self.item_quality), self.time]
|
|
return super(equip_item, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_EquipItem
|
|
def WriteEvent_orange_equip(curPlayer, place, classLV, quality):
|
## Ð´Íæ¼Ò×°±¸Í³¼Æ
|
#===========================================================================
|
# equipItem = equip_item()
|
# equipItem.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# equipItem.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# equipItem.chr_name = curPlayer.GetPlayerName()
|
# equipItem.equip_place = place
|
# equipItem.class_lv = classLV
|
# equipItem.item_quality = quality
|
# WriteEvent(equipItem)
|
#===========================================================================
|
return
|
|
class item_record(ScribeEvent):
|
# ÎïÆ·Á÷Ë®¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(item_record, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.rec_type = 0 # »ñµÃ¡¢Ê§È¥
|
self.event_name = "" # ʼþµãÃû³Æ
|
self.item_name = "" # ÎïÆ·Ãû
|
self.item_count = 0 # ÎïÆ·ÊýÁ¿
|
self.guid = "" # ÎïÆ·Î¨Ò»ID
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
str(self.rec_type), self.event_name, self.item_name, str(self.item_count), self.guid, self.time]
|
|
return super(item_record, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_ItemRecord
|
|
def WriteEvent_item_record(curPlayer, recType, operateType, itemData, operatorExtra):
|
EventReport(ShareDefine.Def_UserAction_ItemRecord, "Flow=%s&OperateType=%s&ItemData=%s&OperatorExtra=%s"
|
% (recType, operateType,
|
json.dumps(itemData, ensure_ascii=False),
|
json.dumps(operatorExtra, ensure_ascii=False)), curPlayer)
|
return
|
#===============================================================================================
|
# ''' @todo: ÎïÆ·Á÷Ë®¼Ç¼
|
# @param recType: 1-»ñµÃ£»-1-ʧȥ
|
# '''
|
# itemRecord = item_record()
|
# itemRecord.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# itemRecord.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# itemRecord.chr_name = curPlayer.GetPlayerName()
|
# itemRecord.rec_type = recType
|
# itemRecord.event_name = eventName
|
# itemRecord.item_name = itemName
|
# itemRecord.item_count = itemCount
|
# itemRecord.guid = guid
|
# WriteEvent(itemRecord)
|
# return
|
#===============================================================================================
|
|
class coin_to_gold(ScribeEvent):
|
# ¶Ò»»µãȯ
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(coin_to_gold, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.order_id = "" # ¶©µ¥ID
|
self.event_name = "" # ʼþµãÃû³Æ
|
self.coin = 0 # ¶Ò»»µãȯ
|
self.coin_prize = 0 # ½±Àøµãȯ
|
self.gold = 0 # »ñµÃ×êʯ
|
self.total_gold = 0 # µ±Ç°×Ü×êʯÊý
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.order_id, self.event_name, str(self.coin), str(self.coin_prize), str(self.gold),
|
str(self.total_gold), self.time]
|
|
return super(coin_to_gold, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_CoinToGold
|
|
def WriteEvent_coin_to_gold(curPlayer, orderID, eventName, coin, prizeCoin, addGold):
|
return
|
#===========================================================================
|
# coinToGold = coin_to_gold()
|
# coinToGold.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# coinToGold.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# coinToGold.chr_name = curPlayer.GetPlayerName()
|
# coinToGold.order_id = orderID
|
# coinToGold.event_name = eventName
|
# coinToGold.coin = coin
|
# coinToGold.coin_prize = prizeCoin
|
# coinToGold.gold = addGold
|
# coinToGold.total_gold = curPlayer.GetGold()
|
# WriteEvent(coinToGold)
|
#===========================================================================
|
return
|
|
class god_weapon_lv(ScribeEvent):
|
# Éñ±øÉý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(god_weapon_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.god_weapon_name = "" # Éñ±øÃû³Æ
|
self.bef_lv = 0 # ´Ë´Î²Ù×÷ǰµÄµÈ¼¶, 0´ú±í0¼¶, 1´ú±í+1¼¶
|
self.bef_exp = 0 # ´Ë´Î²Ù×÷ǰµÄ¾ÑéÖµ
|
self.cost_item_cnt = 0 # ´Ë´ÎÏûºÄµÄµÀ¾ßÊýÁ¿
|
self.aft_lv = 0 # ´Ë´Î²Ù×÷ºóµÄµÈ¼¶, 0´ú±í0¼¶, 1´ú±í+1¼¶
|
self.aft_exp = 0 # ´Ë´Î½ø½×²Ù×÷ºóµÄ¾ÑéÖµ
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.god_weapon_name, str(self.bef_lv), str(self.bef_exp), str(self.cost_item_cnt),
|
str(self.aft_lv), str(self.aft_exp), self.time]
|
|
return super(god_weapon_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_GodWeaponLV
|
|
def WriteEvent_god_weapon_lv(curPlayer, godWeaponName, befLV, befExp, costCnt, aftLV, aftExp):
|
## дÉñ±øÉý¼¶¼Ç¼
|
#===========================================================================
|
# godWeaponLV = god_weapon_lv()
|
# godWeaponLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# godWeaponLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# godWeaponLV.chr_name = curPlayer.GetPlayerName()
|
# godWeaponLV.god_weapon_name = godWeaponName
|
# godWeaponLV.bef_lv = befLV
|
# godWeaponLV.bef_exp = befExp
|
# godWeaponLV.cost_item_cnt = costCnt
|
# godWeaponLV.aft_lv = aftLV
|
# godWeaponLV.aft_exp = aftExp
|
# WriteEvent(godWeaponLV)
|
#===========================================================================
|
return
|
|
class rune_lv(ScribeEvent):
|
# ·ûÓ¡Éý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(rune_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.rune_name = "" # ·ûÓ¡Ãû³Æ
|
self.cost_rune_money = 0 # ´Ë´ÎÏûºÄµÄ·ûÓ¡¾«»ª
|
self.aft_lv = 0 # ´Ë´Î²Ù×÷ºóµÄµÈ¼¶, 0´ú±í1¼¶
|
self.aft_rune_money = 0 # ´Ë´Î²Ù×÷ºóµÄ·ûÓ¡¾«»ª
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.rune_name, str(self.cost_rune_money), str(self.aft_lv), str(self.aft_rune_money), self.time]
|
|
return super(rune_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_RuneLV
|
|
def WriteEvent_rune_lv(curPlayer, runeName, costruneMoney, aftLV, aftruneMoney):
|
## д·ûÓ¡Éý¼¶¼Ç¼
|
#===========================================================================
|
# runeLV = rune_lv()
|
# runeLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# runeLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# runeLV.chr_name = curPlayer.GetPlayerName()
|
# runeLV.rune_name = runeName
|
# runeLV.cost_rune_money = costruneMoney
|
# runeLV.aft_lv = aftLV
|
# runeLV.aft_rune_money = aftruneMoney
|
# WriteEvent(runeLV)
|
#===========================================================================
|
return
|
|
class change_name(ScribeEvent):
|
# ¸ÄÃû¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(change_name, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.old_name = "" # ÔÀ´µÄÃû×Ö
|
self.new_name = "" # еÄÃû×Ö
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.old_name, self.new_name, self.time]
|
|
return super(change_name, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_ChangeName
|
|
def WriteEvent_change_name(curPlayer, oldName, newName):
|
## ¸ÄÃû¼Ç¼
|
#===========================================================================
|
# changeName = change_name()
|
# changeName.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# changeName.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# changeName.chr_name = curPlayer.GetPlayerName()
|
# changeName.old_name = oldName
|
# changeName.new_name = newName
|
# WriteEvent(changeName)
|
#===========================================================================
|
return
|
|
class add_zhenqi(ScribeEvent):
|
# ÕæÆø²ú³ö¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(add_zhenqi, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.eventName = "" # À´Ô´
|
self.eventData = "" # À´Ô´¸½¼ÓÐÅÏ¢
|
self.addValue = 0 # ²ú³öÊýÁ¿
|
self.totalValue = 0 # Ê£Óà×ÜÁ¿
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.eventName, str(self.eventData), str(self.addValue), str(self.totalValue), self.time]
|
|
return super(add_zhenqi, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_AddZhenqi
|
|
def WriteEvent_add_zhenqi(curPlayer, eventName, eventData, addValue, totalValue):
|
## ÕæÆø²ú³ö¼Ç¼
|
#===========================================================================
|
# if eventData:
|
# eventData = str(eventData)
|
# eventData = eventData.replace("\"", "'")
|
# eventData = eventData.replace(",", "|")
|
#
|
# addZhenQi = add_zhenqi()
|
# addZhenQi.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# addZhenQi.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# addZhenQi.chr_name = curPlayer.GetPlayerName()
|
# addZhenQi.eventName = eventName
|
# addZhenQi.eventData = eventData
|
# addZhenQi.addValue = addValue
|
# addZhenQi.totalValue = totalValue
|
# WriteEvent(addZhenQi)
|
#===========================================================================
|
return
|
|
class lost_zhenqi(ScribeEvent):
|
# ÕæÆøÏûºÄ¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(lost_zhenqi, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.eventName = "" # ÏûºÄµã
|
self.eventData = "" # ÏûºÄµã¸½¼ÓÐÅÏ¢
|
self.lostValue = 0 # ÏûºÄÊýÁ¿
|
self.totalValue = 0 # Ê£Óà×ÜÁ¿
|
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.eventName, str(self.eventData), str(self.lostValue), str(self.totalValue), self.time]
|
|
return super(lost_zhenqi, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_LostZhenqi
|
|
def WriteEvent_lost_zhenqi(curPlayer, eventName, eventData, lostValue, totalValue):
|
## ÕæÆøÏûºÄ¼Ç¼
|
#===========================================================================
|
# if eventData:
|
# eventData = str(eventData)
|
# eventData = eventData.replace("\"", "'")
|
# eventData = eventData.replace(",", "|")
|
#
|
# lostZhenQi = lost_zhenqi()
|
# lostZhenQi.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# lostZhenQi.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# lostZhenQi.chr_name = curPlayer.GetPlayerName()
|
# lostZhenQi.eventName = eventName
|
# lostZhenQi.eventData = eventData
|
# lostZhenQi.lostValue = lostValue
|
# lostZhenQi.totalValue = totalValue
|
# WriteEvent(lostZhenQi)
|
#===========================================================================
|
return
|
|
class coat_lv(ScribeEvent):
|
# ʱװÉý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(coat_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.coat_name = "" # ʱװÃû³Æ
|
self.bef_lv = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄµÈ¼¶
|
self.bef_exp = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄ¾ÑéÖµ
|
self.cost_item_cnt = 0 # ´Ë´ÎÏûºÄµÄµÀ¾ßÊýÁ¿
|
self.aft_lv = 0 # ´Ë´Î²Ù×÷ºóµÄµÈ¼¶, 0´ú±í0¼¶, 1´ú±í+1¼¶
|
self.aft_exp = 0 #´Ë´Î½ø½×²Ù×÷ºóµÄ¾ÑéÖµ
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.coat_name, str(self.bef_lv), str(self.bef_exp), str(self.cost_item_cnt), str(self.aft_lv), str(self.aft_exp), self.time]
|
|
return super(coat_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_CoatLV
|
|
def WriteEvent_coat_lv(curPlayer, coatName, befLV, befExp, costItemCnt, aftLV, aftExp):
|
return
|
## дʱװÉý¼¶¼Ç¼
|
#===========================================================================
|
# coatLV = coat_lv()
|
# coatLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# coatLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# coatLV.chr_name = curPlayer.GetPlayerName()
|
# coatLV.coat_name = coatName
|
# coatLV.bef_lv = befLV
|
# coatLV.bef_exp = befExp
|
# coatLV.cost_item_cnt = costItemCnt
|
# coatLV.aft_lv = aftLV
|
# coatLV.aft_exp = aftExp
|
# WriteEvent(coatLV)
|
#===========================================================================
|
|
|
|
class wingskin_lv(ScribeEvent):
|
# ʱװÉý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(wingskin_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.skin_name = "" # »Ã»¯³á°òÃû³Æ
|
self.bef_lv = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄµÈ¼¶
|
self.bef_exp = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄ¾ÑéÖµ
|
self.cost_item_cnt = 0 # ´Ë´ÎÏûºÄµÄµÀ¾ßÊýÁ¿
|
self.aft_lv = 0 # ´Ë´Î²Ù×÷ºóµÄµÈ¼¶, 0´ú±í0¼¶, 1´ú±í+1¼¶
|
self.aft_exp = 0 #´Ë´Î½ø½×²Ù×÷ºóµÄ¾ÑéÖµ
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.skin_name, str(self.bef_lv), str(self.bef_exp), str(self.cost_item_cnt), str(self.aft_lv), str(self.aft_exp), self.time]
|
|
return super(wingskin_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_WingSkinLV
|
|
def WriteEvent_wingskin_lv(curPlayer, skinName, befLV, befExp, costItemCnt, aftLV, aftExp):
|
## д»Ã»¯³á°òÉý¼¶¼Ç¼
|
#===========================================================================
|
# wingskinLV = wingskin_lv()
|
# wingskinLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# wingskinLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# wingskinLV.chr_name = curPlayer.GetPlayerName()
|
# wingskinLV.skin_name = skinName
|
# wingskinLV.bef_lv = befLV
|
# wingskinLV.bef_exp = befExp
|
# wingskinLV.cost_item_cnt = costItemCnt
|
# wingskinLV.aft_lv = aftLV
|
# wingskinLV.aft_exp = aftExp
|
# WriteEvent(wingskinLV)
|
#===========================================================================
|
return
|
|
|
class horseskin_lv(ScribeEvent):
|
# ʱװÉý¼¶¼Ç¼
|
def __init__(self):
|
#±ØÐë×Ö¶Î
|
super(horseskin_lv, self).__init__()
|
self.account_id = "" # Õ˺ŠID£¬Æ½Ì¨ÏÂΨһ£¬ÇÒÖÕÉú²»±ä
|
self.chr_name = "" # Íæ¼Ò½ÇÉ«Ãû
|
|
self.skin_name = "" # »Ã»¯×øÆïÃû³Æ
|
self.bef_lv = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄµÈ¼¶
|
self.bef_exp = 0 # ´Ë´Î½ø½×²Ù×÷ǰµÄ¾ÑéÖµ
|
self.cost_item_cnt = 0 # ´Ë´ÎÏûºÄµÄµÀ¾ßÊýÁ¿
|
self.aft_lv = 0 # ´Ë´Î²Ù×÷ºóµÄµÈ¼¶, 0´ú±í0¼¶, 1´ú±í+1¼¶
|
self.aft_exp = 0 #´Ë´Î½ø½×²Ù×÷ºóµÄ¾ÑéÖµ
|
#·Ç±ØÐë×Ö¶Î
|
|
#¼´Ê±ÊǷDZØÐë×Ö¶ÎÒ²Ó¦¸Ã´«ËÍ£¬¸÷×Ö¶ÎÓÃ,·Ö¸ô£¬²¢ÇÒÓÃË«ÒýºÅ°üº¬£¬²Î¿¼¸ñʽ'"1","","","12314"'
|
return
|
|
def GetCurEventStr(self):
|
if not self.time:
|
self.time = GameWorld.GetCurrentDataTimeStr()
|
tmpList = [self.product_slug, self.agent_name, self.gameserver_no, self.account_id, self.chr_name,
|
self.skin_name, str(self.bef_lv), str(self.bef_exp), str(self.cost_item_cnt), str(self.aft_lv), str(self.aft_exp), self.time]
|
|
return super(horseskin_lv, self).GetEventStr(tmpList)
|
|
def GetScribeEventName(self): return ShareDefine.Def_UserAction_HorseSkinLV
|
|
def WriteEvent_horseskin_lv(curPlayer, skinName, befLV, befExp, costItemCnt, aftLV, aftExp):
|
## д»Ã»¯×øÆïÉý¼¶¼Ç¼
|
#===========================================================================
|
# horseSkinLV = horseskin_lv()
|
# horseSkinLV.SetEventAgentInfo(GameWorld.GetPlayerPlatform(curPlayer.GetAccID()))
|
# horseSkinLV.account_id = GameWorld.GetPlatformAccID(curPlayer.GetAccID())
|
# horseSkinLV.chr_name = curPlayer.GetPlayerName()
|
# horseSkinLV.skin_name = skinName
|
# horseSkinLV.bef_lv = befLV
|
# horseSkinLV.bef_exp = befExp
|
# horseSkinLV.cost_item_cnt = costItemCnt
|
# horseSkinLV.aft_lv = aftLV
|
# horseSkinLV.aft_exp = aftExp
|
# WriteEvent(horseSkinLV)
|
#===========================================================================
|
return
|
## ---------------------------------------------------------------------------------------
|
|
|
#------------------------2018-02-09 еÄÊý¾Ýͳ¼Æ--------------------------------
|
def WriteEvent_Entry(curPlayer, step):
|
EventReport(ShareDefine.Def_UserAction_LostModel, "Step=%s&Flag=%s"%(step, ShareDefine.Def_UserAction_CreateRole), curPlayer)
|
|
def WriteEvent_VIP(curPlayer):
|
EventReport(ShareDefine.Def_UserAction_VIPLvUP, "VIPLevel=%s"%curPlayer.GetVIPLv(), curPlayer)
|
|
def WriteEvent_FightPower(curPlayer):
|
EventReport(ShareDefine.Def_UserAction_FightPower, "FightPower=%s"%curPlayer.GetFightPower(), curPlayer)
|
|
|