Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ OpenPresent()

void Terraria.Player.OpenPresent ( int itemType)
inline

Definition at line 5965 of file Player.cs.

5966 {
5968 if (Main.rand.Next(15) == 0 && Main.hardMode)
5969 {
5970 int number = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 602);
5971 if (Main.netMode == 1)
5972 {
5973 NetMessage.SendData(21, -1, -1, null, number, 1f);
5974 }
5975 return;
5976 }
5977 if (Main.rand.Next(30) == 0)
5978 {
5979 int number2 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1922);
5980 if (Main.netMode == 1)
5981 {
5982 NetMessage.SendData(21, -1, -1, null, number2, 1f);
5983 }
5984 return;
5985 }
5986 if (Main.rand.Next(400) == 0)
5987 {
5988 int number3 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1927);
5989 if (Main.netMode == 1)
5990 {
5991 NetMessage.SendData(21, -1, -1, null, number3, 1f);
5992 }
5993 return;
5994 }
5995 if (Main.rand.Next(150) == 0)
5996 {
5997 int number4 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1870);
5998 if (Main.netMode == 1)
5999 {
6000 NetMessage.SendData(21, -1, -1, null, number4, 1f);
6001 }
6002 number4 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 97, Main.rand.Next(30, 61));
6003 if (Main.netMode == 1)
6004 {
6005 NetMessage.SendData(21, -1, -1, null, number4, 1f);
6006 }
6007 return;
6008 }
6009 if (Main.rand.Next(150) == 0)
6010 {
6011 int number5 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1909);
6012 if (Main.netMode == 1)
6013 {
6014 NetMessage.SendData(21, -1, -1, null, number5, 1f);
6015 }
6016 return;
6017 }
6018 if (Main.rand.Next(150) == 0)
6019 {
6020 int number6 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1917);
6021 if (Main.netMode == 1)
6022 {
6023 NetMessage.SendData(21, -1, -1, null, number6, 1f);
6024 }
6025 return;
6026 }
6027 if (Main.rand.Next(150) == 0)
6028 {
6029 int number7 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1915);
6030 if (Main.netMode == 1)
6031 {
6032 NetMessage.SendData(21, -1, -1, null, number7, 1f);
6033 }
6034 return;
6035 }
6036 if (Main.rand.Next(150) == 0)
6037 {
6038 int number8 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1918);
6039 if (Main.netMode == 1)
6040 {
6041 NetMessage.SendData(21, -1, -1, null, number8, 1f);
6042 }
6043 return;
6044 }
6045 if (Main.rand.Next(150) == 0)
6046 {
6047 int number9 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1921);
6048 if (Main.netMode == 1)
6049 {
6050 NetMessage.SendData(21, -1, -1, null, number9, 1f);
6051 }
6052 return;
6053 }
6054 if (Main.rand.Next(300) == 0)
6055 {
6056 int number10 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1923);
6057 if (Main.netMode == 1)
6058 {
6059 NetMessage.SendData(21, -1, -1, null, number10, 1f);
6060 }
6061 return;
6062 }
6063 if (Main.rand.Next(40) == 0)
6064 {
6065 int number11 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1907);
6066 if (Main.netMode == 1)
6067 {
6068 NetMessage.SendData(21, -1, -1, null, number11, 1f);
6069 }
6070 return;
6071 }
6072 if (Main.rand.Next(10) == 0)
6073 {
6074 int number12 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1908);
6075 if (Main.netMode == 1)
6076 {
6077 NetMessage.SendData(21, -1, -1, null, number12, 1f);
6078 }
6079 return;
6080 }
6081 if (Main.rand.Next(15) == 0)
6082 {
6083 switch (Main.rand.Next(5))
6084 {
6085 case 0:
6086 {
6087 int number14 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1932);
6088 if (Main.netMode == 1)
6089 {
6090 NetMessage.SendData(21, -1, -1, null, number14, 1f);
6091 }
6092 number14 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1933);
6093 if (Main.netMode == 1)
6094 {
6095 NetMessage.SendData(21, -1, -1, null, number14, 1f);
6096 }
6097 number14 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1934);
6098 if (Main.netMode == 1)
6099 {
6100 NetMessage.SendData(21, -1, -1, null, number14, 1f);
6101 }
6102 break;
6103 }
6104 case 1:
6105 {
6106 int number16 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1935);
6107 if (Main.netMode == 1)
6108 {
6109 NetMessage.SendData(21, -1, -1, null, number16, 1f);
6110 }
6111 number16 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1936);
6112 if (Main.netMode == 1)
6113 {
6114 NetMessage.SendData(21, -1, -1, null, number16, 1f);
6115 }
6116 number16 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1937);
6117 if (Main.netMode == 1)
6118 {
6119 NetMessage.SendData(21, -1, -1, null, number16, 1f);
6120 }
6121 break;
6122 }
6123 case 2:
6124 {
6125 int number17 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1940);
6126 if (Main.netMode == 1)
6127 {
6128 NetMessage.SendData(21, -1, -1, null, number17, 1f);
6129 }
6130 number17 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1941);
6131 if (Main.netMode == 1)
6132 {
6133 NetMessage.SendData(21, -1, -1, null, number17, 1f);
6134 }
6135 number17 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1942);
6136 if (Main.netMode == 1)
6137 {
6138 NetMessage.SendData(21, -1, -1, null, number17, 1f);
6139 }
6140 break;
6141 }
6142 case 3:
6143 {
6144 int number15 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1938);
6145 if (Main.netMode == 1)
6146 {
6147 NetMessage.SendData(21, -1, -1, null, number15, 1f);
6148 }
6149 break;
6150 }
6151 case 4:
6152 {
6153 int number13 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1939);
6154 if (Main.netMode == 1)
6155 {
6156 NetMessage.SendData(21, -1, -1, null, number13, 1f);
6157 }
6158 break;
6159 }
6160 }
6161 return;
6162 }
6163 if (Main.rand.Next(7) == 0)
6164 {
6165 int num = Main.rand.Next(3);
6166 if (num == 0)
6167 {
6168 num = 1911;
6169 }
6170 if (num == 1)
6171 {
6172 num = 1919;
6173 }
6174 if (num == 2)
6175 {
6176 num = 1920;
6177 }
6178 int number18 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, num);
6179 if (Main.netMode == 1)
6180 {
6181 NetMessage.SendData(21, -1, -1, null, number18, 1f);
6182 }
6183 return;
6184 }
6185 if (Main.rand.Next(8) == 0)
6186 {
6187 int number19 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1912, Main.rand.Next(1, 4));
6188 if (Main.netMode == 1)
6189 {
6190 NetMessage.SendData(21, -1, -1, null, number19, 1f);
6191 }
6192 return;
6193 }
6194 if (Main.rand.Next(9) == 0)
6195 {
6196 int number20 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1913, Main.rand.Next(20, 41));
6197 if (Main.netMode == 1)
6198 {
6199 NetMessage.SendData(21, -1, -1, null, number20, 1f);
6200 }
6201 return;
6202 }
6203 switch (Main.rand.Next(3))
6204 {
6205 case 0:
6206 {
6207 int number22 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 1872, Main.rand.Next(20, 50));
6208 if (Main.netMode == 1)
6209 {
6210 NetMessage.SendData(21, -1, -1, null, number22, 1f);
6211 }
6212 break;
6213 }
6214 case 1:
6215 {
6216 int number23 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 586, Main.rand.Next(20, 50));
6217 if (Main.netMode == 1)
6218 {
6219 NetMessage.SendData(21, -1, -1, null, number23, 1f);
6220 }
6221 break;
6222 }
6223 default:
6224 {
6225 int number21 = Item.NewItem(itemSource_OpenItem, (int)position.X, (int)position.Y, width, height, 591, Main.rand.Next(20, 50));
6226 if (Main.netMode == 1)
6227 {
6228 NetMessage.SendData(21, -1, -1, null, number21, 1f);
6229 }
6230 break;
6231 }
6232 }
6233 }
Vector2 position
Definition Entity.cs:14
IEntitySource GetItemSource_OpenItem(int itemType)
Definition Player.cs:9277

References Terraria.Player.GetItemSource_OpenItem(), Terraria.Main.hardMode, Terraria.Entity.height, Terraria.Main.netMode, Terraria.Item.NewItem(), Terraria.Entity.position, Terraria.Main.rand, Terraria.NetMessage.SendData(), Terraria.Entity.width, Microsoft.Xna.Framework.Vector2.X, and Microsoft.Xna.Framework.Vector2.Y.

Referenced by Terraria.UI.ItemSlot.TryOpenContainer().