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

◆ ProjLight()

void Terraria.Projectile.ProjLight ( )
inline

Definition at line 13783 of file Projectile.cs.

13784 {
13785 if (!(light > 0f))
13786 {
13787 return;
13788 }
13789 float num = light;
13790 float num2 = light;
13791 float num3 = light;
13792 switch (type)
13793 {
13794 case 987:
13795 num *= 0.6f;
13796 num2 *= 0.5f;
13797 num3 *= 0.1f;
13798 break;
13799 case 988:
13800 num *= 0.8f;
13801 num2 *= 0.35f;
13802 num3 *= 0f;
13803 break;
13804 case 989:
13805 num *= 0f;
13806 num2 *= 0.65f;
13807 num3 *= 0f;
13808 break;
13809 case 990:
13810 num *= 0f;
13811 num2 *= 0.35f;
13812 num3 *= 0.7f;
13813 break;
13814 case 991:
13815 num *= 0.9f;
13816 num2 *= 0f;
13817 num3 *= 0.5f;
13818 break;
13819 case 992:
13820 num *= 0.75f;
13821 num2 *= 0f;
13822 num3 *= 0.75f;
13823 break;
13824 case 993:
13825 num *= (float)Main.DiscoR / 255f;
13826 num2 *= (float)Main.DiscoG / 255f;
13827 num3 *= (float)Main.DiscoB / 255f;
13828 break;
13829 }
13830 if (type == 446)
13831 {
13832 num *= 0f;
13833 num3 *= 0.8f;
13834 }
13835 else if (type == 493 || type == 494)
13836 {
13837 num2 *= 0.3f;
13838 }
13839 else if (type == 876)
13840 {
13841 num *= 0.1f;
13842 num2 *= 0.7f;
13843 num3 *= 1f;
13844 }
13845 else if (type == 867)
13846 {
13847 float num4 = (float)Main.rand.Next(28, 42) * 0.005f;
13848 num4 += (float)(270 - Main.mouseTextColor) / 500f;
13849 num = 0.1f;
13850 num2 = 0.3f + num4 / 2f;
13851 num3 = 0.6f + num4;
13852 }
13853 else if (type == 1000)
13854 {
13855 float num5 = (float)Main.rand.Next(28, 42) * 0.005f;
13856 num5 += (float)(270 - Main.mouseTextColor) / 500f;
13857 num = 0.3f + num5 * 0.25f;
13858 num2 = 0.35f + num5 * 0.75f;
13859 num3 = 0.5f + num5;
13860 }
13861 else if (type == 332)
13862 {
13863 num3 *= 0.1f;
13864 num2 *= 0.6f;
13865 }
13866 else if (type == 259)
13867 {
13868 num3 *= 0.1f;
13869 if (Main.getGoodWorld)
13870 {
13871 num = 0f;
13872 num2 = 0f;
13873 num3 = 0f;
13874 }
13875 }
13876 else if (type == 329)
13877 {
13878 num3 *= 0.1f;
13879 num2 *= 0.9f;
13880 }
13881 else if (type == 2 || type == 82)
13882 {
13883 num2 *= 0.75f;
13884 num3 *= 0.55f;
13885 }
13886 else if (type == 172)
13887 {
13888 num2 *= 0.55f;
13889 num *= 0.35f;
13890 }
13891 else if (type == 308)
13892 {
13893 num2 *= 0.7f;
13894 num *= 0.1f;
13895 }
13896 else if (type == 304)
13897 {
13898 num2 *= 0.2f;
13899 num3 *= 0.1f;
13900 }
13901 else if (type == 263)
13902 {
13903 num2 *= 0.7f;
13904 num *= 0.1f;
13905 }
13906 else if (type == 274)
13907 {
13908 num2 *= 0.1f;
13909 num *= 0.7f;
13910 }
13911 else if (type == 254)
13912 {
13913 num *= 0.1f;
13914 }
13915 else if (type == 94)
13916 {
13917 num *= 0.5f;
13918 num2 *= 0f;
13919 }
13920 else if (type == 95 || type == 96 || type == 103 || type == 104)
13921 {
13922 num *= 0.35f;
13923 num2 *= 1f;
13924 num3 *= 0f;
13925 }
13926 else if (type == 4)
13927 {
13928 num2 *= 0.1f;
13929 num *= 0.5f;
13930 }
13931 else if (type == 257)
13932 {
13933 num2 *= 0.9f;
13934 num *= 0.1f;
13935 }
13936 else if (type == 9)
13937 {
13938 num2 *= 0.1f;
13939 num3 *= 0.6f;
13940 }
13941 else if (type == 488)
13942 {
13943 num = 0.3f;
13944 num3 = 0.25f;
13945 num2 = 0f;
13946 }
13947 else if (type == 92)
13948 {
13949 num2 *= 0.6f;
13950 num *= 0.8f;
13951 }
13952 else if (type == 93)
13953 {
13954 num2 *= 1f;
13955 num *= 1f;
13956 num3 *= 0.01f;
13957 }
13958 else if (type == 12 || type == 955)
13959 {
13960 num *= 0.9f;
13961 num2 *= 0.8f;
13962 num3 *= 0.1f;
13963 }
13964 else if (type == 14 || type == 110 || type == 180 || type == 242 || type == 302)
13965 {
13966 num2 *= 0.7f;
13967 num3 *= 0.1f;
13968 }
13969 else if (type == 981)
13970 {
13971 num2 *= 0.7f;
13972 num3 *= 0.7f;
13973 }
13974 else if (type == 15)
13975 {
13976 num2 *= 0.4f;
13977 num3 *= 0.1f;
13978 num = 1f;
13979 }
13980 else if (type == 16)
13981 {
13982 num *= 0.1f;
13983 num2 *= 0.4f;
13984 num3 = 1f;
13985 }
13986 else if (type == 18)
13987 {
13988 num2 *= 0.1f;
13989 num *= 0.6f;
13990 }
13991 else if (type == 19)
13992 {
13993 num2 *= 0.5f;
13994 num3 *= 0.1f;
13995 }
13996 else if (type == 20)
13997 {
13998 num *= 0.1f;
13999 num3 *= 0.3f;
14000 }
14001 else if (type == 22)
14002 {
14003 num = 0f;
14004 num2 = 0f;
14005 }
14006 else if (type == 27)
14007 {
14008 num *= 0f;
14009 num2 *= 0.3f;
14010 num3 = 1f;
14011 }
14012 else if (type == 34)
14013 {
14014 num2 *= 0.1f;
14015 num3 *= 0.1f;
14016 }
14017 else if (type == 36)
14018 {
14019 num = 0.8f;
14020 num2 *= 0.2f;
14021 num3 *= 0.6f;
14022 }
14023 else if (type == 41)
14024 {
14025 num2 *= 0.8f;
14026 num3 *= 0.6f;
14027 }
14028 else if (type == 44 || type == 45)
14029 {
14030 num3 = 1f;
14031 num *= 0.6f;
14032 num2 *= 0.1f;
14033 }
14034 else if (type == 50)
14035 {
14036 num *= 0.7f;
14037 num3 *= 0.8f;
14038 }
14039 else if (type == 515)
14040 {
14041 num2 *= 0.6f;
14042 num3 *= 0.85f;
14043 }
14044 else if (type == 870)
14045 {
14046 num *= 0.9f;
14047 num2 = 0.35f;
14048 }
14049 else if (type == 53)
14050 {
14051 num *= 0.7f;
14052 num2 *= 0.8f;
14053 }
14054 else if (type == 473)
14055 {
14056 num *= 1.05f;
14057 num2 *= 0.95f;
14058 num3 *= 0.55f;
14059 }
14060 else if (type == 72)
14061 {
14062 num *= 0.45f;
14063 num2 *= 0.75f;
14064 num3 = 1f;
14065 }
14066 else if (type == 86)
14067 {
14068 num *= 1f;
14069 num2 *= 0.45f;
14070 num3 = 0.75f;
14071 }
14072 else if (type == 87)
14073 {
14074 num *= 0.45f;
14075 num2 = 1f;
14076 num3 *= 0.75f;
14077 }
14078 else if (type == 73)
14079 {
14080 num *= 0.4f;
14081 num2 *= 0.6f;
14082 num3 *= 1f;
14083 }
14084 else if (type == 74)
14085 {
14086 num *= 1f;
14087 num2 *= 0.4f;
14088 num3 *= 0.6f;
14089 }
14090 else if (type == 284)
14091 {
14092 num *= 1f;
14093 num2 *= 0.1f;
14094 num3 *= 0.8f;
14095 }
14096 else if (type == 285)
14097 {
14098 num *= 0.1f;
14099 num2 *= 0.5f;
14100 num3 *= 1f;
14101 }
14102 else if (type == 286)
14103 {
14104 num *= 1f;
14105 num2 *= 0.5f;
14106 num3 *= 0.1f;
14107 }
14108 else if (type == 287)
14109 {
14110 num *= 0.9f;
14111 num2 *= 1f;
14112 num3 *= 0.4f;
14113 }
14114 else if (type == 283)
14115 {
14116 num *= 0.8f;
14117 num2 *= 0.1f;
14118 }
14119 else if (type == 76 || type == 77 || type == 78)
14120 {
14121 num *= 1f;
14122 num2 *= 0.3f;
14123 num3 *= 0.6f;
14124 }
14125 else if (type == 79)
14126 {
14127 num = (float)Main.DiscoR / 255f;
14128 num2 = (float)Main.DiscoG / 255f;
14129 num3 = (float)Main.DiscoB / 255f;
14130 }
14131 else if (type == 80)
14132 {
14133 num *= 0f;
14134 num2 *= 0.8f;
14135 num3 *= 1f;
14136 }
14137 else if (type == 83 || type == 88)
14138 {
14139 num *= 0.7f;
14140 num2 *= 0f;
14141 num3 *= 1f;
14142 }
14143 else if (type == 100)
14144 {
14145 num *= 1f;
14146 num2 *= 0.5f;
14147 num3 *= 0f;
14148 }
14149 else if (type == 84 || type == 389)
14150 {
14151 num *= 0.8f;
14152 num2 *= 0f;
14153 num3 *= 0.5f;
14154 }
14155 else if (type == 89 || type == 90)
14156 {
14157 num2 *= 0.2f;
14158 num3 *= 1f;
14159 num *= 0.05f;
14160 }
14161 else if (type == 106)
14162 {
14163 num *= 0f;
14164 num2 *= 0.5f;
14165 num3 *= 1f;
14166 }
14167 else if (type == 113)
14168 {
14169 num *= 0.25f;
14170 num2 *= 0.75f;
14171 num3 *= 1f;
14172 }
14173 else if (type == 114 || type == 115)
14174 {
14175 num *= 0.5f;
14176 num2 *= 0.05f;
14177 num3 *= 1f;
14178 }
14179 else if (type == 116)
14180 {
14181 num3 *= 0.25f;
14182 }
14183 else if (type == 131)
14184 {
14185 num *= 0.1f;
14186 num2 *= 0.4f;
14187 }
14188 else if (type == 132 || type == 157)
14189 {
14190 num *= 0.2f;
14191 num3 *= 0.6f;
14192 }
14193 else if (type == 156)
14194 {
14195 num *= 1f;
14196 num3 *= 0.6f;
14197 num2 = 0f;
14198 }
14199 else if (type == 173)
14200 {
14201 num *= 0.3f;
14202 num3 *= 1f;
14203 num2 = 0.4f;
14204 }
14205 else if (type == 207)
14206 {
14207 num *= 0.4f;
14208 num3 *= 0.4f;
14209 }
14210 else if (type == 253)
14211 {
14212 num = 0f;
14213 num2 *= 0.4f;
14214 }
14215 else if (type == 211)
14216 {
14217 num *= 0.5f;
14218 num2 *= 0.9f;
14219 num3 *= 1f;
14220 if (localAI[0] == 0f)
14221 {
14222 light = 1.5f;
14223 }
14224 else
14225 {
14226 light = 1f;
14227 }
14228 }
14229 else if (type == 209)
14230 {
14231 float num6 = (255f - (float)alpha) / 255f;
14232 num *= 0.3f;
14233 num2 *= 0.4f;
14234 num3 *= 1.75f;
14235 num3 *= num6;
14236 num *= num6;
14237 num2 *= num6;
14238 }
14239 else if (type == 226 || ((type == 221) | (type == 229)))
14240 {
14241 num *= 0.25f;
14242 num2 *= 1f;
14243 num3 *= 0.5f;
14244 }
14245 else if (type == 251)
14246 {
14247 num = (float)Main.DiscoR / 255f;
14248 num2 = (float)Main.DiscoG / 255f;
14249 num3 = (float)Main.DiscoB / 255f;
14250 num = (num + 1f) / 2f;
14251 num2 = (num2 + 1f) / 2f;
14252 num3 = (num3 + 1f) / 2f;
14253 num *= light;
14254 num2 *= light;
14255 num3 *= light;
14256 }
14257 else if (type == 278 || type == 279)
14258 {
14259 num *= 1f;
14260 num2 *= 1f;
14261 num3 *= 0f;
14262 }
14263 if (type == 870)
14264 {
14265 Vector3 rgb = (DelegateMethods.v3_1 = new Vector3(num, num2, num3));
14266 Point p = base.Center.ToTileCoordinates();
14267 DelegateMethods.v2_1 = p.ToVector2();
14268 DelegateMethods.f_1 = 4.5f;
14269 Utils.PlotTileArea(p.X, p.Y, DelegateMethods.SpreadLightOpen_StopForSolids);
14270 Lighting.AddLight(base.Center, rgb);
14271 }
14272 else
14273 {
14274 Lighting.AddLight((int)((position.X + (float)(width / 2)) / 16f), (int)((position.Y + (float)(height / 2)) / 16f), num, num2, num3);
14275 }
14276 }
Vector2 position
Definition Entity.cs:14

References Terraria.Lighting.AddLight(), Terraria.Projectile.alpha, Terraria.Main.DiscoB, Terraria.Main.DiscoG, Terraria.Main.DiscoR, Terraria.Main.getGoodWorld, Terraria.Entity.height, Terraria.Projectile.light, Terraria.Projectile.localAI, Terraria.Main.mouseTextColor, Terraria.Utils.PlotTileArea(), Terraria.Entity.position, Terraria.Main.rand, Terraria.DelegateMethods.SpreadLightOpen_StopForSolids(), Terraria.Projectile.type, Terraria.Entity.width, Microsoft.Xna.Framework.Point.X, Microsoft.Xna.Framework.Point.Y, and Microsoft.Xna.Framework.Vector2.Y.

Referenced by Terraria.Projectile.Update().