2016-08-27 5 views
-1

2つのケースを生成しようとしています。私は2つのケースを選択させたい。2つのケースを生成する方法Cでのみ1つではない

私のコード

#region IronTiger Boss 
      if (Owner.Name == "IronTiger") 
      { 
       byte times = (byte)Kernel.Random.Next(1, 3); 
       byte ref_times = (byte)Kernel.Random.Next(1, 6); 
       for (byte i = 0; i < times; i++) 
       { 
        uint Uid = 0; 
        byte type = (byte)Kernel.Random.Next(1, 28); 

        switch (type) 
        { 
         case 1: 
          Uid = 824020;  
          break; 

         case 2: 
          Uid = 824019;  
          break; 

         case 3: 
          Uid = 824018;  
          break; 

         case 4: 
          Uid = 823060;  
          break; 

         case 5: 
          Uid = 823061;  
          break; 

         case 6: 
          Uid = 823060;  
          break; 

         case 7: 
          Uid = 823059;  
          break; 

         case 8: 
          Uid = 823058;  
          break; 

         case 9: 
          Uid = 822072;  
          break; 

         case 10: 
          Uid = 822071;  
          break; 

         case 11: 
          Uid = 821033;  
          break; 

         case 12: 
          Uid = 820076;  
          break; 

         case 13: 
          Uid = 820075;  
          break; 

         case 14: 
          Uid = 820074;  
          break; 

         case 15: 
          Uid = 820073;  
          break; 

         case 16: 
          Uid = 800917;  
          break; 

         case 17: 
          Uid = 800811;  
          break; 

         case 18: 
          Uid = 800810;  
          break; 

         case 19: 
          Uid = 800725;  
          break; 

         case 20: 
          Uid = 800618;  
          break; 

         case 21: 
          Uid = 800522;  
          break; 

         case 22: 
          Uid = 800422;  
          break; 

         case 23: 
          Uid = 800255;  
          break; 

         case 24: 
          Uid = 800255;  
          break; 

         case 25: 
          Uid = 800142;  
          break; 

         case 26: 
          Uid = 800111;  
          break; 

         case 27: 
          Uid = 800020;  
          break; 

         case 28: 
          Uid = 821034;  
          break;  
        } 

        if (Uid != 0) 
        { 
         killer.Owner.Inventory.Add(Uid, 0, 1); 
         DeadPool.Kernel.SendWorldMessage(new DeadPool.Network.GamePackets.Message("Congratulations! " + killer.Name + " has killed " + Name + " and dropped! " + Database.ConquerItemInformation.BaseInformations[Uid].Name + "!", System.Drawing.Color.White, 2011), Program.Values); 
         return; 
        }  
       } 
      } 
      #endregion 

その完了は、それが私の唯一の1ケースを提供します。私はそれが2つのケースを生成しないようにしたい1.どのように私はこれを修正することができますまた、私はどのように多くの場合を追加するのですか?

+0

「1件」と言うときはどういう意味ですか? –

+0

私はそれがケース1から選択することを意味します:ケース28:、1ケースのみが2ケースではありません。 @TimmyJim –

+0

'type'は1つの値しか保持できないので、2つのケースをどのように実行したいのですか?あなたの質問は非常に理解するのは難しいです、それを詳しく教えてください(コメントではなく、あなたの投稿を編集してください) – squill25

答えて

2
if (Uid != 0) 
{ 
    killer.Owner.Inventory.Add(Uid, 0, 1); 
    DeadPool.Kernel.SendWorldMessage(new DeadPool.Network.GamePackets.Message("Congratulations! " + killer.Name + " has killed " + Name + " and dropped! " + Database.ConquerItemInformation.BaseInformations[Uid].Name + "!", System.Drawing.Color.White, 2011), Program.Values); 
    return; 
} 

そこにreturnがありますか?あなたはそれが何をしているのか分かりますか?値が見つかったときに戻り、2回目のループが一度も実行されません。

デバッガを使用してコードを実行する方法を学ぶ必要があります。これらの問題はすぐに解消されます。

関連する問題