public static int GetMultiple(ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, CUseable usb) { for (int i = 0; i < (int)multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO cOMDT_REWARD_MULTIPLE_INFO = multipleDetail.astMultiple[i]; if (cOMDT_REWARD_MULTIPLE_INFO.wRewardType == (ushort)usb.MapRewardType) { int multipleValue = CUseable.GetMultipleValue(cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo, 1); float num = (float)multipleValue / 10000f; int result = 0; if (multipleValue != 0) { if (num > 0f) { result = (int)(num + 0.9999f); } else if (num < 0f) { result = (int)(num - 0.9999f); } } if (cOMDT_REWARD_MULTIPLE_INFO.wRewardType != 1) { return(result); } if ((uint)((CItem)usb).m_itemData.bClass == cOMDT_REWARD_MULTIPLE_INFO.dwRewardTypeParam) { return(result); } } } return(0); }
public static ushort GetMultiple(ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType, short subType = -1) { for (int i = 0; i < multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO comdt_reward_multiple_info = multipleDetail.astMultiple[i]; if ((comdt_reward_multiple_info.wRewardType == rewardType) && ((subType < 0) || (((uint)subType) == comdt_reward_multiple_info.dwRewardTypeParam))) { return((ushort)((((((comdt_reward_multiple_info.stMultipleInfo.dwWealRatio + comdt_reward_multiple_info.stMultipleInfo.dwQQVIPRatio) + comdt_reward_multiple_info.stMultipleInfo.dwPropRatio) + comdt_reward_multiple_info.stMultipleInfo.dwPvpDailyRatio) + comdt_reward_multiple_info.stMultipleInfo.dwWXGameCenterLoginRatio) + comdt_reward_multiple_info.stMultipleInfo.dwGuildRatio) / 100)); } } return(0); }
public static COMDT_MULTIPLE_INFO GetMultipleInfo(ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType, short subType = -1) { for (int i = 0; i < multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO comdt_reward_multiple_info = multipleDetail.astMultiple[i]; if ((comdt_reward_multiple_info.wRewardType == rewardType) && ((subType < 0) || (((uint)subType) == comdt_reward_multiple_info.dwRewardTypeParam))) { return(comdt_reward_multiple_info.stMultipleInfo); } } return(null); }
public static uint GetMultipleInfo(out COMDT_MULTIPLE_DATA[] multipleData, ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType, short subType = -1) { for (int i = 0; i < (int)multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO cOMDT_REWARD_MULTIPLE_INFO = multipleDetail.astMultiple[i]; if (cOMDT_REWARD_MULTIPLE_INFO.wRewardType == rewardType && (subType < 0 || (uint)subType == cOMDT_REWARD_MULTIPLE_INFO.dwRewardTypeParam)) { multipleData = cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.astMultipleData; return(cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.dwMultipleNum); } } multipleData = null; return(0u); }
public static uint GetQqVipExtraCoin(uint totalCoin, ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType) { for (int i = 0; i < multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO comdt_reward_multiple_info = multipleDetail.astMultiple[i]; if (comdt_reward_multiple_info.wRewardType == rewardType) { if (comdt_reward_multiple_info.stMultipleInfo.dwQQVIPRatio <= 0) { break; } float num2 = ((float)comdt_reward_multiple_info.stMultipleInfo.dwQQVIPRatio) / 10000f; return((uint)((((float)totalCoin) / ((((float)comdt_reward_multiple_info.stMultipleInfo.dwWealRatio) / 10000f) + num2)) * num2)); } } return(0); }
public static ushort GetMultiple(ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, CUseable usb) { for (int i = 0; i < multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO comdt_reward_multiple_info = multipleDetail.astMultiple[i]; if (comdt_reward_multiple_info.wRewardType == ((ushort)usb.MapRewardType)) { if (comdt_reward_multiple_info.wRewardType == 1) { if (((CItem)usb).m_itemData.bClass == comdt_reward_multiple_info.dwRewardTypeParam) { return((ushort)(comdt_reward_multiple_info.stMultipleInfo.dwWealRatio / 0x2710)); } } else { return((ushort)(comdt_reward_multiple_info.stMultipleInfo.dwWealRatio / 0x2710)); } } } return(0); }
public static int GetMultiple(uint baseVal, ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType, short subType = -1) { for (int i = 0; i < (int)multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO cOMDT_REWARD_MULTIPLE_INFO = multipleDetail.astMultiple[i]; if (cOMDT_REWARD_MULTIPLE_INFO.wRewardType == rewardType && (subType < 0 || (uint)subType == cOMDT_REWARD_MULTIPLE_INFO.dwRewardTypeParam)) { int num = 0; int num2 = 0; while ((long)num2 < (long)((ulong)cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.dwMultipleNum)) { byte bOperator = cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.astMultipleData[num2].bOperator; if (bOperator != 0) { if (bOperator == 1) { double num3 = baseVal * (double)cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.astMultipleData[num2].iValue / 10000.0; if (num3 > 0.0) { num += (int)(num3 + 0.9999); } else if (num3 < 0.0) { num += (int)(num3 - 0.9999); } } } else { num += cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo.astMultipleData[num2].iValue; } num2++; } return(num); } } return(0); }
public static uint GetQqVipExtraCoin(uint totalCoin, ref COMDT_REWARD_MULTIPLE_DETAIL multipleDetail, ushort rewardType) { for (int i = 0; i < (int)multipleDetail.bNum; i++) { COMDT_REWARD_MULTIPLE_INFO cOMDT_REWARD_MULTIPLE_INFO = multipleDetail.astMultiple[i]; if (cOMDT_REWARD_MULTIPLE_INFO.wRewardType == rewardType) { int multipleValue = CUseable.GetMultipleValue(cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo, 1); int multipleValue2 = CUseable.GetMultipleValue(cOMDT_REWARD_MULTIPLE_INFO.stNewMultipleInfo, 2); float num = (float)multipleValue2 / 10000f; float num2 = totalCoin / ((float)multipleValue / 10000f + num) * num; if (num2 > 0f) { return((uint)(num2 + 0.9999f)); } if (num2 < 0f) { return((uint)(num2 - 0.9999f)); } } } return(0u); }