60 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
		
			2.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
--lua script
 | 
						||
--Reward configs
 | 
						||
 | 
						||
MONEYTYPE = {
 | 
						||
[0] = OldLang.NoticeStr.x00005, 	--<2D><><EFBFBD>
 | 
						||
[3] = OldLang.NoticeStr.x00007,	--Ԫ<><D4AA>
 | 
						||
}
 | 
						||
--<2D><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3B2BBB4>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1><EFBFBD><EFBFBD><EFBFBD>չ
 | 
						||
--<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD>dz<EFBFBD><C7B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ǯ<EFBFBD><C7AE>Ʒ <20><><EFBFBD><EFBFBD><EFBFBD>ܿ<EFBFBD><DCBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
						||
--<2D><><EFBFBD><EFBFBD>չ<EFBFBD>ԺͿ<D4BA>ά<EFBFBD><CEAC><EFBFBD>ԵĽǶȿ<C7B6> <20>б<EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
						||
--rewardCheck	<09><>Ϊר<CEAA>Ŷ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>õĹ<C3B5><C4B9>߷<EFBFBD><DFB7><EFBFBD> <20><><EFBFBD>ڼ<EFBFBD>⽱<EFBFBD><E2BDB1><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD>״<EFBFBD><D7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ز<EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD>
 | 
						||
--doReward	<09><>Ϊר<CEAA>Ŷ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD>õĹ<C3B5><C4B9>߷<EFBFBD><DFB7><EFBFBD> <20><><EFBFBD><EFBFBD>ִ<EFBFBD>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD>Ϊ
 | 
						||
 | 
						||
--ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
 | 
						||
function rewardConfigCheck (sysarg,rewardConfig)
 | 
						||
	if rewardConfig == nil then return 2 end
 | 
						||
	local needspace = 0
 | 
						||
	local myJob = Actor.getIntProperty( sysarg, PROP_ACTOR_VOCATION )
 | 
						||
	local mySex = Actor.getIntProperty(sysarg,PROP_ACTOR_SEX)
 | 
						||
	for i,c in ipairs(rewardConfig) do
 | 
						||
		if c.rewardtype == 1 and (not c.sex or c.sex == mySex) and (not c.job or c.job == myJob) then
 | 
						||
			needspace = needspace + Item.getAddItemNeedGridCount( sysarg, c.itemid, c.amount )
 | 
						||
		end
 | 
						||
	end
 | 
						||
	--if ( needspace > Item.getBagEmptyGridCount( sysarg ) ) then
 | 
						||
	if ( needspace > Item.getAllBagMinEmptyGridCount( sysarg ) ) then
 | 
						||
		----print("---Reward config bag space lack."..needspace)
 | 
						||
		return 2 , needspace
 | 
						||
	end
 | 
						||
	return 0 , needspace
 | 
						||
end
 | 
						||
 | 
						||
--ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD>н<EFBFBD><D0BD><EFBFBD>
 | 
						||
function doRewardConfig (sysarg,rewardConfig)
 | 
						||
	if rewardConfig == nil then return end
 | 
						||
	local myJob = Actor.getIntProperty( sysarg, PROP_ACTOR_VOCATION )
 | 
						||
	local mySex = Actor.getIntProperty(sysarg,PROP_ACTOR_SEX)
 | 
						||
	for i = 1, #rewardConfig do
 | 
						||
		local c = rewardConfig[i]
 | 
						||
		if ( c.rewardtype == 1 ) then
 | 
						||
			if (not c.sex or c.sex == mySex) and (not c.job or c.job == myJob) then
 | 
						||
				Actor.addItem(sysarg,c.itemid,c.quality,c.strong, c.amount,c.bind,0,OldLang.Log.LogclOnAsyncOpResultFunc,205)
 | 
						||
				local itemname = Item.getItemName(c.itemid)
 | 
						||
				if itemname then
 | 
						||
					local allmsg = string.format(OldLang.NoticeStr.q00037,itemname,c.amount)
 | 
						||
					Actor.sendTipmsg(sysarg,allmsg, ttFlyTip)
 | 
						||
				else
 | 
						||
					print("Item.getItemName() failed, itemid = " .. c.itemid);
 | 
						||
				end
 | 
						||
			end
 | 
						||
		elseif ( c.rewardtype == 2 ) then
 | 
						||
			Actor.changeMoney( sysarg, c.type, c.amount,205, OldLang.Log.LogclOnAsyncOpResultFunc)
 | 
						||
			local moneystr = MONEYTYPE[c.type]
 | 
						||
			local allmsg = string.format(moneystr,c.amount)  
 | 
						||
			Actor.sendTipmsg(sysarg,allmsg, ttFlyTip)
 | 
						||
		end
 | 
						||
	end
 | 
						||
end
 | 
						||
 |