Share small programs for pumping out restaurants and game equipment made by .net

高洛峰
Release: 2017-03-28 13:22:25
Original
1461 people have browsed it

This article mainly introduces the small program for smoking restaurants and game equipment produced by .net. Friends no longer have to think about where to eat every day. It is very fun and practical. Friends in need can refer to it

Just create a new asp.net web project and drag it in. Now I know why the game always fails to produce good equipment, because its weight is very small. . . For lunch, randomly select which restaurant you want to go to, and set the weight value a little higher. If you still can’t win, just accept your fate!

Share small programs for pumping out restaurants and game equipment made by .net

Default.aspx

 
nbsp;html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 


  <title>加权随机</title>


  
Copy after login
  

     
  
     
  
     
  
     
     

  

Default.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
public partial class _Default : System.Web.UI.Page
{
  //<string>:
  public Dictionary<string> Goods = new Dictionary<string>();
  public int TotalWeight = 0;
 
  public class Good
  {
    /// <summary>
    /// 名称
    /// </summary>
    public string Name
    {
      get;
      set;
    }
    /// <summary>
    /// 权重(大于等于1,否则出现的可能性为0)
    /// </summary>
    public int Weight
    {
      get;
      set;
    }
  }
 
  public List<good> Result = new List<good>();
 
  protected void Page_Load(object sender, EventArgs e)
  {
  }
 
  /// <summary>
  /// 初始化装备 俺是《梦三国》玩家,嘿嘿
  /// </summary>
  protected void InitGoods()
  {
    Goods.Clear();
    TotalWeight = 0;
 
    Goods.Add("寒冰爪", 2);     //神器(拳爪类)
    Goods.Add("重毛皮", 300);
    Goods.Add("小毛皮", 1000);
    Goods.Add("轻毛皮", 1000);
    Goods.Add("神之防具打造书", 5);
    Goods.Add("传说武器打造书", 20);
    Goods.Add("紫檀树枝", 300);
    Goods.Add("硬毛皮", 600);
    Goods.Add("勾魂水晶", 8);
    Goods.Add("真龙炙舞剑", 30);
    Goods.Add("董卓勾魂", 1);    //神器中的神器(长柄类)
 
    foreach (KeyValuePair<string> kvp in Goods)
    {
      TotalWeight += kvp.Value;
    } 
  }
 
  /// <summary>
  /// 初始化餐厅,公司楼下餐厅比较多,只写几个,意思意思。。。
  /// </summary>
  protected void InitFood()
  {
    Goods.Clear();
    TotalWeight = 0;
 
    Goods.Add("清真兰州", 1);
    Goods.Add("长安客", 1);
    Goods.Add("迎客松", 1);
    Goods.Add("吉祥混沌", 1);
 
    foreach (KeyValuePair<string> kvp in Goods)
    {
      TotalWeight += kvp.Value;
    }
  }
 
  protected int GetTryParse()
  {
    try
    {
      return int.Parse(txtNum.Text);
    }
    catch {
      return 1;
    }
  }
 
  //开始抽奖(装备)
  protected void btnRandom_Click(object sender, EventArgs e)
  {
    InitGoods();
 
    lblResult.Text = lblResult.Text + "<br>";
 
    int Count = GetTryParse();
    for (int i = 1; i  kvp in Goods)
    {
      int c = Result.Count(d => d.Name == kvp.Key);
      double rate = c * 1.0 / Count * 1.0 * 100;
 
      lblResult.Text = lblResult.Text + "物品名称:" + kvp.Key + " 权重:" + kvp.Value + " 暴出次数:" + c.ToString() + " 暴出率:" + rate + "%<br>";
    }
 
  }
 
  //开始抽奖(餐厅)
  protected void btnRandomFood_Click(object sender, EventArgs e)
  {
    InitFood();
 
    lblResult.Text = lblResult.Text + "<br>";
 
    int Count = GetTryParse();
    for (int i = 1; i  kvp in Goods)
    {
      int c = Result.Count(d => d.Name == kvp.Key);
      double rate = c * 1.0 / Count * 1.0 * 100;
 
      lblResult.Text = lblResult.Text + "餐厅名称:" + kvp.Key + " 权重:" + kvp.Value + " 暴出次数:" + c.ToString() + " 暴出率:" + rate + "%<br>";
    }
 
  }
 
  /// <summary>
  /// 根据随机权重判断所在范围
  /// </summary>
  /// <param>
  protected void ProduceResult(int Weight)
  {
    int min = 1;
    int max = 1;
    foreach (KeyValuePair<string> kvp in Goods)
    {
      max = min + kvp.Value - 1;
 
      if (Weight >= min && Weight 
  /// 随机种子值(防止速度过快造成的重复)
  /// 
  /// <returns></returns>
  private static int GetRandomSeed()
  {
    byte[] bytes = new byte[4];
    System.Security.Cryptography.RNGCryptoServiceProvider rng = new System.Security.Cryptography.RNGCryptoServiceProvider();
    rng.GetBytes(bytes);
    return BitConverter.ToInt32(bytes, 0);
  }
 
  //清屏操作
  protected void btnClear_Click(object sender, EventArgs e)
  {
    lblResult.Text = "";
  }
}</string></string></string></good></good></string></string></string>
Copy after login

The above is the entire content of this article, I hope you can like.

The above is the detailed content of Share small programs for pumping out restaurants and game equipment made by .net. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template