-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathModLiquidLib.xml
More file actions
1244 lines (1244 loc) · 94 KB
/
ModLiquidLib.xml
File metadata and controls
1244 lines (1244 loc) · 94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<?xml version="1.0"?>
<doc>
<assembly>
<name>ModLiquidLib</name>
</assembly>
<members>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.CountsAsLiquidSource">
<summary> Whether or not this tile counts as a this liquid's source for crafting purposes. </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.IgnoresWater">
<summary> Whether or not the tile is non-solid to liquids, allowing them to flow through. </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.IgnoresWaterDuringWorldgen">
<summary> Whether or not the tile is non-solid to liquids during worldgen. </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.CreateLiquidBucketItem">
<summary> The Item created when a bucket is used on a liquid selected </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.CanBeAbsorbedBy">
<summary> Whats Items a liquid can be absorbed by. Used for defining sponges. </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.CanModdedNPCSpawnInModdedLiquid">
<summary> Whether or not the NPC can spawn in the liquid specified. NOTE: only works for modded liquids and npcs </summary>
</member>
<member name="F:ModLiquidLib.ID.LiquidID_TLmod.Sets.UsesWaterFishingLootPool">
<summary> Whether or not the liquid uses the water loot pool when fished it. NOTE: this set does not effect/change Water, lava or honey and is mainly used for modded liquids. </summary>
</member>
<member name="T:ModLiquidLib.ModLoader.GlobalLiquid">
<summary>
This class allows you to modify the behavior of any liquid in the game, both vanilla and modded.
<br /> To use it, simply create a new class deriving from this one. Implementations will be registered automatically.
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PreDraw(System.Int32,System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidDrawCache,Microsoft.Xna.Framework.Vector2,System.Boolean,System.Int32,System.Single)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default.<para />
This method is only called in "Color" and "White" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreRetroDraw" /> for the other Lighting modes pre drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquidDrawCache">The LiquidDrawCache of the rendering</param>
<param name="drawOffset">The amount the liquid rendered is offset by</param>
<param name="isBackgroundDraw">Whether or not the liquid is in the background</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PostDraw(System.Int32,System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidDrawCache,Microsoft.Xna.Framework.Vector2,System.Boolean,System.Int32,System.Single)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreDraw" /> returns false.<para />
This method is only called in "Color" and "White" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PostRetroDraw" /> for the other Lighting modes post drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquidDrawCache">The LiquidDrawCache of the rendering</param>
<param name="drawOffset">The amount the liquid rendered is offset by</param>
<param name="isBackgroundDraw">Whether or not the liquid is in the background</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.EmitEffects(System.Int32,System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidCache)">
<summary>
Allows you to make stuff happen whenever the liquid at the given coordinates is drawn. For example, creating bubble dusts or changing the color the liquid is drawn in. <para />
This hook is seperate from Liquid Rendering, Only use this for things such as spawning particles. <para />
Return false to stop Lava from spawning some of its bubbles. Returns true by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquidCache">Various information about the liquid that is being drawn, such as opacity, visual liquid, etc.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PreRetroDraw(System.Int32,System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default.<para />
This method is only called in "Retro" and "Trippy" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreDraw" /> for the other Lighting modes pre drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="spriteBatch"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PostRetroDraw(System.Int32,System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreRetroDraw" /> returns false.<para />
This method is only called in "Retro" and "Trippy" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PostDraw" /> for the other Lighting modes post drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="spriteBatch"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.RetroDrawEffects(System.Int32,System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch,ModLiquidLib.Utils.Structs.RetroLiquidDrawInfo@,System.Single,System.Int32)">
<summary>
Allows you to make stuff happen whenever the liquid at the given coordinates is drawn. For example, creating bubble dusts or changing the color the liquid is drawn in. <para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreRetroDraw" /> returns false.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="spriteBatch"></param>
<param name="drawData">Various information about the liquid that is being drawn, such as color, opacity, waterfall length, etc.</param>
<param name="liquidAmountModified">Gets the amount of liquid in a tile for retro rendering</param>
<param name="liquidGFXQuality">Gets the number of quality the game has for retro rendering</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PreSlopeDraw(System.Int32,System.Int32,System.Int32,System.Boolean,Microsoft.Xna.Framework.Vector2@,Microsoft.Xna.Framework.Rectangle@,Terraria.Graphics.VertexColors@)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default. <para />
Only called for liquid slopes. If you want to predraw the liquid itself, see <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreDraw" /> or <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreRetroDraw" />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="behindBlocks">Whether or not the slope is rendered behind tiles</param>
<param name="drawPosition">The rendering position of the slope. Use this rather than x/y as the rendering can be offset sometimes</param>
<param name="liquidSize">The size of the liquid</param>
<param name="colors">The color of the liquid. Usually the light color of the liquid</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PostSlopeDraw(System.Int32,System.Int32,System.Int32,System.Boolean,Microsoft.Xna.Framework.Vector2@,Microsoft.Xna.Framework.Rectangle@,Terraria.Graphics.VertexColors@)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PreSlopeDraw" /> returns false.<para />
Only called for liquid slopes. If you want to postdraw the liquid itself, see <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.POstDraw" /> or <see cref="P:ModLiquidLib.ModLoader.GlobalLiquid.PostRetroDraw" />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="behindBlocks">Whether or not the slope is rendered behind tiles</param>
<param name="drawPosition">The rendering position of the slope. Use this rather than x/y as the rendering can be offset sometimes</param>
<param name="liquidSize">The size of the liquid</param>
<param name="colors">The color of the liquid. Usually the light color of the liquid</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ModifyLight(System.Int32,System.Int32,System.Int32,System.Single@,System.Single@,System.Single@)">
<summary>
Allows you to determine how much light this liquid emits.<br />
It can also let you light up the block in front of this liquid.<br />
See <see cref="M:Terraria.Graphics.Light.TileLightScanner.ApplyTileLight(Terraria.Tile,System.Int32,System.Int32,Terraria.Utilities.FastRandom@,Microsoft.Xna.Framework.Vector3@)" /> for vanilla tile light values to use as a reference.<br />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="r">The red component of light, usually a value between 0 and 1</param>
<param name="g">The green component of light, usually a value between 0 and 1</param>
<param name="b">The blue component of light, usually a value between 0 and 1</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.DisableRetroLavaBubbles(System.Int32,System.Int32)">
<summary>
Allows for disabling lava bubbles in "Retro" and "Trippy" lighting modes. Only calls when lava's PreRetroDraw isnt false. Returns false by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ChooseWaterfallStyle(System.Int32,System.Int32,System.Int32)">
<summary>
The ID of the waterfall/liquidfall style the game should use when the liquid is near a half block.
Returns null by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.UpdateLiquid(System.Int32,System.Int32,System.Int32,Terraria.Liquid)">
<summary>
Allows the changing of liquid movement in-game as well as allowing you to do other stuff with liquids during updates such as custom evaporation. Returns true by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquid"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.EvaporatesInHell(System.Int32,System.Int32,System.Int32)">
<summary>
Allows you to make liquids evaporate in the underworld. Also allows for disabling of water evaporation. Returns null by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.SettleLiquidMovement(System.Int32,System.Int32,System.Int32)">
<summary>
Allows you to change how liquids move when loading or creating a world. Returns true by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidMerge(System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
Used to change what tile the liquid generates upon coming in contact with another liquid. Use the otherLiquid param to check what liquid this liquid is interacting with.<br/>
This method is called even if a tile isn't generated. It is recommended that modders use a non-frame important tile as the result, otherwise the tile may fail to generate.<br/>
It is recomended that developers use PreLiquidMerge for handling custom collisions and effects as that method is only called when a tile is requested to generate.<br/>
This hook is still called, even if PreLiquidMerge is returned false. <br/>
NOTE: it is encouraged to set a default tile that this liquid results in, otherwise it will default to stone. <br/>
Returns 1 by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="otherLiquid">The liquid ID of the liquid colliding with this one.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidMergeSound(System.Int32,System.Int32,System.Int32,System.Int32,System.Nullable{Terraria.Audio.SoundStyle}@)">
<summary>
Used to modify the sound thats played when two liquids merge with each other. <br/>
Called every time liquids collide and only on clients. <br/>
Is not called if PreLiquidMerge returns false.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="otherLiquid">The liquid ID of the liquid colliding with this one.</param>
<param name="collisionSound">The sound to be played, set this to a sound if you don't want the default merge sound to play.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PreLiquidMerge(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
Used to do do extra effects and special merges when two liquids collide with each other. Use the otherLiquid param to check which liquid is colliding with this liquid. <br/>
NOTE: this method is called ONLY on servers when in multiplayer. Make sure you send a packet if you want to do extra visual effects. To learn more about handling custom packets, please see <see cref="M:Terraria.ModLoader.Mod.HandlePacket(System.IO.BinaryReader,System.Int32)" />. <br/>
Return false to prevent the normal liquid merging logic. <br/>
Retruns true by default.
</summary>
<param name="liquidX">The x position of the target liquid in tile coordinates<br/>
NOTE: This may not always mean the x position of THIS liquid, as it may mean the x position of the other liquid.</param>
<param name="liquidY">The y position of the target liquid in tile coordinates<br/>
NOTE: This may not always mean the y position of THIS liquid, as it may mean the y position of the other liquid.</param>
<param name="tileX">The x position of where the tile is sechedualed to generate at in tile coordninates.<br/>
NOTE: most of the time this x position is the same as liquid's x position, this means that the tile is being generated over the liquid.<br/>
Useful for when trying to do something else other than generating a tile.</param>
<param name="tileY">The y position of where the tile is sechedualed to generate at in tile coordninates.<br/>
NOTE: most of the time this y position is the same as liquid's y position, this means that the tile is being generated over the liquid.<br/>
Useful for when trying to do something else other than generating a tile.</param>
<param name="type"></param>
<param name="otherLiquid">The Liquid ID of the liquid colliding with this liquid</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidFallDelay(System.Int32)">
<summary>
Allows the editing of how fast liquids fall, return null for the regular liquid falling to apply. <br/>
For Modded Liquids, use ModLiquid.FallDelay property to edit how fast your liquid falls. This method can be used to edit other mod liquids falling as well.<br/>
Returns null by default <br/>
NOTE: liquids can only have a maximum fall delay of 10 (which is the same as the fall of Honey), this is due to the delay being reset to 10 when in quickfall mode.
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.AdjLiquids(System.Int32)">
<summary>
Allows you to determine which liquids the given liquid type can be considered as when looking for avaliable liquids.
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.BlocksTilePlacement(Terraria.Player,System.Int32,System.Int32,System.Int32)">
<summary>
Allows the user to specify whether the liquid prevents the placement or blockswap of a tile over this liquid. Usually used by lava to stop players from placing ontop of it. <br/>
Return true for the liquid to prevent tile placement, return false if the liquid can have tiles placed over it. Return null for the default logic to run.<br/>
Returns null by default.
</summary>
<param name="player">The player instance thats attempting to place a tile over the liquid.</param>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnPlayerSplash(Terraria.Player,System.Int32,System.Boolean)">
<summary>
Allows you to decide what happens when the player enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a player enters and leaves. <br/>
Players now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return true to allow the liquids to call their normal splash code. Returns true by default.
</summary>
<param name="player">The player instance thats entering or exiting the liquid.</param>
<param name="type"></param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnNPCSplash(Terraria.NPC,System.Int32,System.Boolean)">
<summary>
Allows you to decide what happens when a NPC enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a NPC enters and leaves. <br/>
NPCs now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return true to allow the liquids to call their normal splash code. Returns true by default.
</summary>
<param name="npc">The NPC instance thats entering or exiting the liquid.</param>
<param name="type"></param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnProjectileSplash(Terraria.Projectile,System.Int32,System.Boolean)">
<summary>
Allows you to decide what happens when a projectile enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a projectile enters and leaves. <br/>
Projectiles now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return true to allow the liquids to call their normal splash code. Returns true by default.
</summary>
<param name="proj">The projectile instance thats entering or exiting the liquid.</param>
<param name="type"></param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnFishingBobberSplash(Terraria.Projectile,System.Int32)">
<summary>
Allows you to decide what happens when a fishing bobber catches a fish. Water uses this to create extra water bubbles and to make a splash sound. <br/>
Return false to disable the water splashing fishing bobbers create.
</summary>
<param name="proj">The projectile instance thats fishing in the liquid.</param>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnItemSplash(Terraria.Item,System.Int32,System.Boolean)">
<summary>
Allows you to decide what happens when an item enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when an item enters and leaves. <br/>
Items now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return true to allow the liquids to call their normal splash code. Returns true by default.
</summary>
<param name="item">The item instance thats entering or exiting the liquid.</param>
<param name="type"></param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PlayerLiquidMovement(Terraria.Player,System.Int32,System.Boolean,System.Boolean)">
<summary>
Allows the user to specify how a liquid interacts with the player (especially player movement). <br/>
Please see <see cref="P:Terraria.Player.WaterCollision" />, <see cref="P:Terraria.Player.HoneyCollision" />, or <see cref="P:Terraria.Player.ShimmerCollision" /> to see how vanilla handles it's liquid collision. <br/>
Return true for the liquid to use the normal liquid collision code. <br/>
Returns true by default.
</summary>
<param name="player">The player instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="fallThrough">Whether or not the player is falling through the liquid.</param>
<param name="ignorePlats">Whether or not the player ignores platforms when falling.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PlayerGravityModifier(Terraria.Player,System.Int32,System.Single@,System.Single@,System.Int32@,System.Single@)">
<summary>
Allows the user to specify how a liquid interacts with the player (especially player gravity). <br/>
Please see <see cref="P:Terraria.Player.Update" />, to see how vanilla handles it's liquid gravity.
</summary>
<param name="player">The player instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="gravity">The current player.gravity being changed.</param>
<param name="maxFallSpeed">The current player.maxFallSpeed being changed.</param>
<param name="jumpHeight">The current Player.jumpHeight being changed.</param>
<param name="jumpSpeed">The current Player.jumpSpeed being changed.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ItemLiquidCollision(Terraria.Item,System.Int32,Microsoft.Xna.Framework.Vector2@,System.Single@,System.Single@)">
<summary>
Allows the user to specify how a liquid interacts with an item (especially item gravity and movement). <br/>
Please see <see cref="P:Terraria.Item.UpdateItem" />, to see how vanilla handles it's liquid collision. <br/> <br/>
This method is also used to modify items detected to be in liquids. Use this to do things such as deleting items touching this liquid.
</summary>
<param name="item">The item instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="wetVelocity">The velocity of the item when in the liquid.</param>
<param name="gravity">The gravity of the item.</param>
<param name="maxFallSpeed">The maximum fall speed of the item.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.NPCLiquidMovement(Terraria.NPC,System.Int32,Microsoft.Xna.Framework.Vector2)">
<summary>
Allows the user to specify how a liquid interacts with a npc (especially npc movement). <br/>
Please see <see cref="P:Terraria.NPC.UpdateCollision" />, to see how vanilla handles it's liquid collision. <br/>
Return true for the liquid to call the method that applies the liquid velocity multiplier. <br/>
Returns true by default.
</summary>
<param name="npc">The npc instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="dryVelocity">The velocity of the NPC before being modified by the liquid.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.NPCGravityModifier(Terraria.NPC,System.Int32,System.Single@,System.Single@)">
<summary>
Allows the user to specify how a liquid interacts with an npc (especially npc gravity). <br/>
Please see <see cref="P:Terraria.NPC.UpdateNPC_UpdateGravity" />, to see how vanilla handles it's liquid collision.
</summary>
<param name="npc">The npc instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="gravity">The gravity of the npc.</param>
<param name="maxFallSpeed">The maximum fall speed of the npc.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ProjectileLiquidMovement(Terraria.Projectile,System.Int32,Microsoft.Xna.Framework.Vector2@,Microsoft.Xna.Framework.Vector2,System.Int32,System.Int32,System.Boolean)">
<summary>
Allows the user to specify how a liquid interacts with a projectile (especially projectile movement). <br/>
Please see <see cref="P:Terraria.Projectile.HandleMovement" />, to see how vanilla handles it's liquid collision. <br/>
Return true for the liquid to use the normal liquid collision code. <br/>
Returns true by default.
</summary>
<param name="projectile">The projectile instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="wetVelocity">The velocity of the item when in the liquid.</param>
<param name="collisionPosition">The position of where the projectile is calculated when colliding with this liquid.</param>
<param name="Width">The modified width of this projectile.</param>
<param name="Height">The modified height of this projectile.</param>
<param name="fallThrough">Whether or not the projectile can fall through.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ChecksForDrowning(System.Int32)">
<summary>
Hook for deciding whether a liquid should allow or disallow, when overtop of the Collision.CheckDrowning position, to be considered drowning or not. <br/>
Not to be confused with CanPlayersDrown, which is a hook called every frame to check if the player is drowning or not. Useful for making items such as a Breething Reed. <br/>
Return null to execute the normal Collision.CheckDrowning behaviour. Returns null by default.
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.AllowEmitBreathBubbles(System.Int32)">
<summary>
Hook for deciding whether a liquid should emit breath dusts when a player or npc is slowly drowning. <br/>
ChecksForDrowning must be set to true for this to run.
Return null to execute the normal breath behaviour. Returns null by default.
</summary>
<param name="type"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.CanPlayerDrown(Terraria.Player,System.Int32,System.Boolean@)">
<summary>
Allows you to give conditions for when the game attempts to check to see if the player is drowning. <br/>
Set isDrowning to either true or false depending on whether the player should or should not be drowning. <br/>
This is used by items such as the Breething Reed to make the player be submerged deeper underwater. <br/>
Please see <see cref="P:Terraria.Player.CheckDrowning" /> for how vanilla uses the isDrowning boolean flag. <br/>
ChecksForDrowning must be set to true for this to run. Not to be confused with ChecksForDrowning hook.
</summary>
<param name="player">The player instance thats being effected by the liquid.</param>
<param name="type"></param>
<param name="isDrowning">The boolean flag for whether or not the player is drowning.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidFishingPoolSizeMulitplier(System.Int32,System.Single@)">
<summary>
The multiper responsable for the poolsize of liquid being fished in. <br/>
Honey uses this to multiply its pool size by 1.5x, this means that honey only needs a minimum of 50 tiles rather than 75 tiles of liquid.
</summary>
<param name="type"></param>
<param name="multiplier">The multiplier used, for most liquids this will be 1, but for honey it's 1.5.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.AllowFishingInShimmer">
<summary>
Allows bobbers to ignore the application of the shimmer effect when being wet by shimmer. <br/>
This allows modders to easily enable fishing in shimmer. Do keep in mind, the fishing loot normally is water.
</summary>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidSlopeOpacity(System.Int32,System.Single@)">
<summary>
The opacity liquid slopes render at. Lava uses this to render at 1f opacity, and honey does the following calculation for it's opacity: <br/>
Math.Max(0.5f * 1.7f, 1f) <br/>
The game does additional calulations after this hook to get the final opacity. Use this method to edit liquid slope's default opacity to render at. <br/>
slopeOpacity defaults at 0.5f.
</summary>
<param name="type"></param>
<param name="slopeOpacity">The opacity already given to a liquid. Edit this to change the default liquid slope opacity.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.LiquidLightMaskMode(System.Int32,System.Int32,System.Int32,Terraria.Graphics.Light.LightMaskMode@)">
<summary>
Allows you to change the Light Mask Mode for any liquid. The Light Mask Mode is the mask for lighting to determine how light interacts with a liquid. <br/>
Vanilla has options for Water (slight blue fade) and Honey (dark black) while lava uses the None option. <br/>
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquidMaskMode">Edit this param to change the Light Mask Mode of the liquid.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.WaterRippleMultiplier(System.Int32,System.Single@)">
<summary>
The multiplier used when the Waves qaulity setting is set to Medium. <br/>
Honey and Lava set this multiplier to be 0.3x. <br/>
This setting is to make waves go the same distance no matter the liquid. For some reason vanilla manually applies a multiplier rather than doing seperate math for the wave speed.
</summary>
<param name="type"></param>
<param name="multiplier">The multiplier used, for most liquids this will be 1f, but for honey and lava it's 0.3.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.ModifyNearbyTiles(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
Allows manipulation of tiles when grass burns. This allows modders to make grasses burn with a liquid or do other interactions if a liquid is nearby a tile. <br/>
Only effects tiles in a 9x9 area around a liquid and only executes every few seconds. <br/>
Can be used to allow modders to make sure their grasses burn when near lava.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="type"></param>
<param name="liquidX">The x position of the liquid in tile coordinates.</param>
<param name="liquidY">The y position of the liquid in tile coordinates.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnPump(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
Allows modders to do extra interactions when a liquid is pumped. <br/>
Works similarly to a Pre hook, executing before any liquids are moved for each pump. <br/>
Return true for pumps to execute their normal liquid moving logic. <br/>
Returns true by default.
</summary>
<param name="inLiquidType"></param>
<param name="inX">The x position of the in pump in tile coordinates.</param>
<param name="inY">The y position of the in pump in tile coordinates.</param>
<param name="outX">The x position of the out pump in tile coordinates.</param>
<param name="outY">The y position of the out pump in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.StopWatchMPHMultiplier(System.Int32,System.Single@)">
<summary>
A hook to modify a liquid's stopwatch MPH multiplier whether that be modder or vanilla liquids. <br/>
Water has its multiplier set to 0.5, honey 0.25 and shimmer 0.375 as an example of existing values.
</summary>
<param name="type"></param>
<param name="multiplier">The multiplier for the stopwatch MPH.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnPlayerCollision(Terraria.Player,System.Int32)">
<summary>
Executed whenever the collision check for players is executed and found true.
This is used for adding de/buffs, damaging the player or incrimenting/deincrementing timers or ModPlayer fields.
Vanilla liquids use this to add buffs or debuffs such as On Fire!, Honey, or Shimmering.
</summary>
<param name="player">The player instance being effected by this liquid.</param>
<param name="type"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnNPCCollision(Terraria.NPC,System.Int32)">
<summary>
Executed whenever the collision check for NPCs is executed and found true.
This is used for adding debuffs, damaging the npc or incrimenting/deincrementing timers or GlobalNPC fields.
Vanilla liquids use this to damage the NPC and apply On Fire! when touching lava.
</summary>
<param name="npc">The NPC instance being effected by this liquid.</param>
<param name="type"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.OnProjectileCollision(Terraria.Projectile,System.Int32)">
<summary>
Executed whenever the collision check for projectiles is executed and found true.
This is used for changing projectile types, killing projectiles, and doing other misc effects.
Vanilla liquids use this to transforming flaming arrows into arrows and killing flamethrower flames.
</summary>
<param name="proj">The Projectile instance being effected by this liquid.</param>
<param name="type"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.AnimateLiquid(System.Int32,Microsoft.Xna.Framework.GameTime,System.Int32@,System.Single@)">
<summary>
Allows you to animate a liquid. <br/>
Returning false will cause the liquid/s to nolonger play an animation. <br/>
Use frameState to keep track of how long the current frame has been active, and use frame to change the current frame. <br/>
GameTime has also been provided to check the current seconds that has overlapped ingame. <br/>
Returns true by default.
</summary>
<param name="type"></param>
<param name="gameTime">The current amount of time that has passed since the game has been opened.</param>
<param name="frame">The current frame the liquid is on.</param>
<param name="frameState">The current frame counter the liquid is on.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.NPCRippleModifier(Terraria.NPC,System.Int32,System.Single@,System.Single@)">
<summary>
Allows you to modify the ripple strength and offset when an NPC enters, exists and moves through a liquid. <br/>
This is executed right before QueueRipple is called in Terraria.GameContent.Shaders.WaterShaderData.DrawWaves.
</summary>
<param name="npc">The NPC instance moving through the liquid.</param>
<param name="type"></param>
<param name="rippleStrength">The strength and size of a ripple.</param>
<param name="rippleOffset">The offset of a ripple.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.GlobalLiquid.PlayerRippleModifier(Terraria.Player,System.Int32,System.Single@,System.Single@)">
<summary>
Allows you to modify the ripple strength and offset when a player enters, exists and moves through a liquid. <br/>
This is executed right before QueueRipple is called in Terraria.GameContent.Shaders.WaterShaderData.DrawWaves.
</summary>
<param name="player">The player moving through the liquid.</param>
<param name="type"></param>
<param name="rippleStrength">The strength and size of a ripple.</param>
<param name="rippleOffset">The offset of a ripple.</param>
</member>
<member name="T:ModLiquidLib.ModLoader.ILiquidModTile">
<summary>
Contains extra hooks for ModTile that are useful for liquid implementatiom.
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.ILiquidModTile.CreateWaterfall(System.Int32,System.Int32)">
<summary>
Creates a waterfall at the tile position. <br/>
Useful when creating a tile similar to rain or snow cloud blocks.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ILiquidModTile.DrawTileInWater(System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch)">
<summary>
Allows the rendering of this tile in liquids. <br/>
Lily pads use this hook to draw themselves to liquids so water ripples/waves effect those tiles.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="spriteBatch"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.LiquidLoader.GetLiquid(System.Int32)">
<summary>
Gets the ModLiquid instance with the given type. If no ModLiquid with the given type exists, returns null.
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.LiquidLoader.GetModLiquid(System.Int32)">
<inheritdoc cref="M:ModLiquidLib.ModLoader.LiquidLoader.GetLiquid(System.Int32)" />
</member>
<member name="M:ModLiquidLib.ModLoader.LiquidLoader.LiquidType``1">
<summary>
Get the id (type) of a ModLiquid by class. Assumes one instance per class.
</summary>
</member>
<member name="T:ModLiquidLib.ModLoader.ModLiquid">
<summary>
This class represents a type of liquid that can be added by a mod. Only one instance of this class will ever exist for each type of liquid that is added. Any hooks that are called will be called by the instance corresponding to the liquid type. This is to prevent the game from using a massive amount of memory storing liquid instances.<br />
</summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.Type">
<summary> The Liquid ID of this Modded Liquid </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.BlockTexture">
<summary> The block texture of this liquid. Used for some slope framing and when liquids are rendered in retro lighting modes. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.SlopeTexture">
<summary> The slope texture of this liquid. Used for rendering the liquids next to tile slopes. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.SplashSound">
<summary> The default sound that plays when an entity enters and exits this liquid. Overriding any OnSplash hooks/methods will prevent this from being used. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.SplashDustType">
<summary> The default dust ID thats used when an entity enters and exists this liquid. Overriding any OnSplash hooks/methods will prevent this from being used. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.FallDelay">
<summary> Liquids can only have a maximum fall delay of 10 (which is the same as the fall of Honey), this is due to the delay being reset to 10 when in quickfall mode. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.VanillaFallbackOnModDeletion">
<summary> The vanilla ID of what should replace the instance when a user unloads and subsequently deletes data from your mod in their save file. Defaults to 0. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.AdjLiquids">
<summary> An array of the IDs of liquids that this tile can be considered as when looking for available liquids. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.ChecksForDrowning">
<summary> The check in Collision that checks if a coord will be drowning in water.</summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.AllowEmitBreathBubbles">
<summary> Whether or not, when drowning, a player or npc will emit dusts from their mouth. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.FishingPoolSizeMultiplier">
<summary> The multiplier used to change how many tiles are needed to fish in a pool of liquid. Honey uses a 1.5x multiplier for its pool size. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.WaterRippleMultiplier">
<summary> The multiplier used only when Waves quality setting is set to Medium. Honey and Lava use this to set the modifier to 0.3x. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.SlopeOpacity">
<summary> The opacity that this liquid slope renders at. Lava and Honey use this to look thicker. Defaults to 0.5f. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.PlayerMovementMultiplier">
<summary> The multiplier thats used to specify how slow (or fast) the player moves while in this liquid. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.StopWatchMPHMultiplier">
<summary> The multiplier used for stopwatches to know how to offset the MPH reading. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.NPCMovementMultiplierDefault">
<summary> The default value that ModLiquidNPC.moddedLiquidMovementSpeed sets to before ModNPC.SetDefaults </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.ProjectileMovementMultiplier">
<summary> The multiplier thats used to specify how slow (or fast) projectiles move while in this liquid. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.UsesLavaCollisionForWet">
<summary> Uses lava based collision check for when applying this liquid's wet boolean. <br/>
This means collision is more sensitive, and the wet is active even when touching the smallest amount of this liquid. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.ExtinguishesOnFireDebuffs">
<summary> Whether or not this liquid removes the On Fire! debuffs when entering. </summary>
</member>
<member name="P:ModLiquidLib.ModLoader.ModLiquid.LiquidfallOpacityMultiplier">
<summary> The multiplier repsonsible for multiplying how much opacity each step in this liquid's fall should be drawn at.
<br/> Only effects slopes when underground (similar to other liquids).</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.AddMapEntry(Microsoft.Xna.Framework.Color,Terraria.Localization.LocalizedText)">
<summary>
Adds an entry to the minimap for this liquid with the given color and display name. This should be called in SetDefaults.
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.AddMapEntry(Microsoft.Xna.Framework.Color,Terraria.Localization.LocalizedText,System.Func{System.String,System.Int32,System.Int32,System.String})">
<summary>
<inheritdoc cref="M:ModLiquidLib.ModLoader.ModLiquid.AddMapEntry(Microsoft.Xna.Framework.Color,Terraria.Localization.LocalizedText)" />
<br /><br /> <b>Overload specific:</b> This overload has an additional <paramref name="nameFunc" /> parameter. This function will be used to dynamically adjust the hover text. The parameters for the function are the default display name, x-coordinate, and y-coordinate.
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.CreateMapEntryName">
<summary>
Legacy helper method for creating a localization sub-key MapEntry
</summary>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.SetStaticDefaults">
<summary>
Allows you to modify the properties after initial loading has completed.
<br /> This is where you would set the properties of this liquid. Many properties are stored as arrays throughout Terraria's code.
<br /> For example:
<list type="bullet">
<item> WATERFALL_LENGTH = 10 </item>
<item> DefaultOpacity = 0.6f; </item>
<item> VisualViscosity = 0; </item>
</list>
</summary>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.GetMapOption(System.Int32,System.Int32)">
<summary>
Allows you to choose which minimap entry the liquid at the given coordinates will use. 0 is the first entry added by AddMapEntry, 1 is the second entry, etc. Returns 0 by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PreDraw(System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidDrawCache,Microsoft.Xna.Framework.Vector2,System.Boolean)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default.<para />
This method is only called in "Color" and "White" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreRetroDraw" /> for the other Lighting modes pre drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="liquidDrawCache">The LiquidDrawCache of the rendering</param>
<param name="drawOffset">The amount the liquid rendered is offset by</param>
<param name="isBackgroundDraw">Whether or not the liquid is in the background</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PostDraw(System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidDrawCache,Microsoft.Xna.Framework.Vector2,System.Boolean)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreDraw" /> returns false.<para />
This method is only called in "Color" and "White" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PostRetroDraw" /> for the other Lighting modes post drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="liquidDrawCache">The LiquidDrawCache of the rendering</param>
<param name="drawOffset">The amount the liquid rendered is offset by</param>
<param name="isBackgroundDraw">Whether or not the liquid is in the background</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.EmitEffects(System.Int32,System.Int32,Terraria.GameContent.Liquid.LiquidRenderer.LiquidCache)">
<summary>
Allows you to make stuff happen whenever the liquid at the given coordinates is drawn. For example, creating bubble dusts or changing the color the liquid is drawn in. <para />
This hook is seperate from Liquid Rendering, Only use this for things such as spawning particles.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="liquidCache">Various information about the liquid that is being drawn, such as opacity, visual liquid, etc.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PreRetroDraw(System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default.<para />
This method is only called in "Retro" and "Trippy" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreDraw" /> for the other Lighting modes pre drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="spriteBatch"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PostRetroDraw(System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreRetroDraw" /> returns false.<para />
This method is only called in "Retro" and "Trippy" lighting modes. Use <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PostDraw" /> for the other Lighting modes post drawing
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="spriteBatch"></param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.RetroDrawEffects(System.Int32,System.Int32,Microsoft.Xna.Framework.Graphics.SpriteBatch,ModLiquidLib.Utils.Structs.RetroLiquidDrawInfo@,System.Single,System.Int32)">
<summary>
Allows you to make stuff happen whenever the liquid at the given coordinates is drawn. For example, creating bubble dusts or changing the color the liquid is drawn in. <para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreRetroDraw" /> returns false.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="spriteBatch"></param>
<param name="drawData">Various information about the liquid that is being drawn, such as color, opacity, waterfall length, etc.</param>
<param name="liquidAmountModified">Gets the amount of liquid in a tile for retro rendering</param>
<param name="liquidGFXQuality">Gets the number of quality the game has for retro rendering</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PreSlopeDraw(System.Int32,System.Int32,System.Boolean,Microsoft.Xna.Framework.Vector2@,Microsoft.Xna.Framework.Rectangle@,Terraria.Graphics.VertexColors@)">
<summary>
Allows you to draw things behind the liquid at the given coordinates. Return false to stop the game from drawing the liquid normally. Returns true by default. <para />
Only called for liquid slopes. If you want to predraw the liquid itself, see <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreDraw" /> or <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreRetroDraw" />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="behindBlocks">Whether or not the slope is rendered behind tiles</param>
<param name="drawPosition">The rendering position of the slope. Use this rather than x/y as the rendering can be offset sometimes</param>
<param name="liquidSize">The size of the liquid</param>
<param name="colors">The color of the liquid. Usually the light color of the liquid</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PostSlopeDraw(System.Int32,System.Int32,System.Boolean,Microsoft.Xna.Framework.Vector2@,Microsoft.Xna.Framework.Rectangle@,Terraria.Graphics.VertexColors@)">
<summary>
Allows you to draw things in front of the liquid at the given coordinates. This can also be used to do things such as rendering glowmasks.<para />
This hook is not called if <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PreSlopeDraw" /> returns false.<para />
Only called for liquid slopes. If you want to postdraw the liquid itself, see <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PostDraw" /> or <see cref="P:ModLiquidLib.ModLoader.ModLiquid.PostRetroDraw" />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="behindBlocks">Whether or not the slope is rendered behind tiles</param>
<param name="drawPosition">The rendering position of the slope. Use this rather than x/y as the rendering can be offset sometimes</param>
<param name="liquidSize">The size of the liquid</param>
<param name="colors">The color of the liquid. Usually the light color of the liquid</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.ModifyLight(System.Int32,System.Int32,System.Single@,System.Single@,System.Single@)">
<summary>
Allows you to determine how much light this liquid emits.<br />
It can also let you light up the block in front of this liquid.<br />
See <see cref="M:Terraria.Graphics.Light.TileLightScanner.ApplyTileLight(Terraria.Tile,System.Int32,System.Int32,Terraria.Utilities.FastRandom@,Microsoft.Xna.Framework.Vector3@)" /> for vanilla tile light values to use as a reference.<br />
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="r">The red component of light, usually a value between 0 and 1</param>
<param name="g">The green component of light, usually a value between 0 and 1</param>
<param name="b">The blue component of light, usually a value between 0 and 1</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.ModifyLightMaskMode(System.Int32,System.Single@,System.Single@,System.Single@)">
<summary>
Modifies the LightMaskMode used for this liquid. <br/>
Due to limitations in the lighting engine, tile coordinates and editing of vanilla lightmasks are unavaliable. <br/>
NOTE: set LiquidLightMaskMode to None for this hook/method to be called. Otherwise this liquid will use the other mask mode instead.
</summary>
<param name="index">The current LightMap index. Water uses this to randomise its colors slightly.</param>
<param name="r">The red component of light, usually a value between 0 and 1</param>
<param name="g">The green component of light, usually a value between 0 and 1</param>
<param name="b">The blue component of light, usually a value between 0 and 1</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.LiquidLightMaskMode(System.Int32,System.Int32)">
<summary>
Allows you to change the Light Mask Mode for this liquid. The Light Mask Mode is the mask for lighting to determine how light interacts with this liquid. <br/>
Vanilla has options for Water (slight blue fade) and Honey (dark black) while lava uses the None option. <br/>
Defaults to LightMaskMode.None.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.ChooseWaterfallStyle(System.Int32,System.Int32)">
<summary>
The ID of the waterfall/liquidfall style the game should use when this liquid is near a half block
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.UpdateLiquid(System.Int32,System.Int32,Terraria.Liquid)">
<summary>
Allows the changing of liquid movement in-game as well as allowing you to do other stuff with liquids during updates such as custom evaporation. Returns true by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="liquid"></param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.EvaporatesInHell(System.Int32,System.Int32)">
<summary>
Allows you to make your liquid evaporate like water when in the underworld. Returns false by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.SettleLiquidMovement(System.Int32,System.Int32)">
<summary>
Allows you to change how your liquid moves when loading or creating a world. Returns true by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.LiquidMerge(System.Int32,System.Int32,System.Int32)">
<summary>
Used to change what tile the liquid generates upon coming in contact with another liquid. Use the otherLiquid param to check what liquid this liquid is interacting with.<br/>
This method is called even if a tile isn't generated. It is recommended that modders use a non-frame important tile as the result, otherwise the tile may fail to generate.<br/>
It is recomended that developers use PreLiquidMerge for handling custom collisions and effects as that method is only called when a tile is requested to generate.<br/>
This hook is still called, even if PreLiquidMerge is returned false. <br/>
NOTE: it is encouraged to set a default tile that this liquid results in, otherwise it will default to stone. <br/>
Returns 1 by default.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="otherLiquid">The liquid ID of the liquid colliding with this one.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.LiquidMergeSound(System.Int32,System.Int32,System.Int32,System.Nullable{Terraria.Audio.SoundStyle}@)">
<summary>
Used to modify the sound thats played when two liquids merge with each other. <br/>
Called every time liquids collide and only on clients. <br/>
Is not called if PreLiquidMerge returns false.
</summary>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<param name="otherLiquid">The liquid ID of the liquid colliding with this one.</param>
<param name="collisionSound">The sound to be played, set this to a sound if you don't want the default merge sound to play.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PreLiquidMerge(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
<summary>
Used to do do extra effects and special merges when two liquids collide with each other. Use the otherLiquid param to check which liquid is colliding with this liquid. <br/>
NOTE: this method is called ONLY on servers when in multiplayer. Make sure you send a packet if you want to do extra visual effects. To learn more about handling custom packets, please see <see cref="M:Terraria.ModLoader.Mod.HandlePacket(System.IO.BinaryReader,System.Int32)" />. <br/>
Return false to prevent the normal liquid merging logic. <br/>
Retruns true by default.
</summary>
<param name="liquidX">The x position of the target liquid in tile coordinates<br/>
NOTE: This may not always mean the x position of THIS liquid, as it may mean the x position of the other liquid.</param>
<param name="liquidY">The y position of the target liquid in tile coordinates<br/>
NOTE: This may not always mean the y position of THIS liquid, as it may mean the y position of the other liquid.</param>
<param name="tileX">The x position of where the tile is sechedualed to generate at in tile coordninates.<br/>
NOTE: most of the time this x position is the same as liquid's x position, this means that the tile is being generated over the liquid.<br/>
Useful for when trying to do something else other than generating a tile.</param>
<param name="tileY">The y position of where the tile is sechedualed to generate at in tile coordninates.<br/>
NOTE: most of the time this y position is the same as liquid's y position, this means that the tile is being generated over the liquid.<br/>
Useful for when trying to do something else other than generating a tile.</param>
<param name="otherLiquid">The Liquid ID of the liquid colliding with this liquid</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.BlocksTilePlacement(Terraria.Player,System.Int32,System.Int32)">
<summary>
Allows the user to specify whether the liquid prevents the placement or blockswap of a tile over this liquid. Usually used by lava to stop players from placing ontop of it. <br/>
Return true for the liquid to prevent tile placement, return false if the liquid can have tiles placed over it. <br/>
Returns false by default.
</summary>
<param name="player">The player instance thats attempting to place a tile over the liquid.</param>
<param name="i">The x position in tile coordinates.</param>
<param name="j">The y position in tile coordinates.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.OnPlayerSplash(Terraria.Player,System.Boolean)">
<summary>
Allows you to decide what happens when the player enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a player enters and leaves. <br/>
Players now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return false for the liquid to not execute the default modded liquid splash code. <br/>
Returns true by default.
</summary>
<param name="player">The player instance thats entering or exiting the liquid.</param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.OnNPCSplash(Terraria.NPC,System.Boolean)">
<summary>
Allows you to decide what happens when a NPC enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a NPC enters and leaves. <br/>
NPCs now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return false for the liquid to not execute the default modded liquid splash code. <br/>
Returns true by default.
</summary>
<param name="npc">The NPC instance thats entering or exiting the liquid.</param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.OnProjectileSplash(Terraria.Projectile,System.Boolean)">
<summary>
Allows you to decide what happens when a projectile enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when a projectile enters and leaves. <br/>
Projectiles now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return false for the liquid to not execute the default modded liquid splash code. <br/>
Returns true by default.
</summary>
<param name="proj">The projectile instance thats entering or exiting the liquid.</param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.OnItemSplash(Terraria.Item,System.Boolean)">
<summary>
Allows you to decide what happens when an item enters and exits this liquid. Vanilla liquids use this to spawn dusts and make a splashing noise when an item enters and leaves. <br/>
Items now also have a moddedWet array to show which modded liquids are being entered in at a time. Please see <see cref="P:ModLiquidLib.Utils.ModLiquidPlayer.moddedWet" /> array on how to use it. <br/>
Return false for the liquid to not execute the default modded liquid splash code. <br/>
Returns true by default.
</summary>
<param name="item">The item instance thats entering or exiting the liquid.</param>
<param name="isEnter">Whether the currently the liquid is being entered or exited.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.OnFishingBobberSplash(Terraria.Projectile)">
<summary>
Allows you to decide what happens when a fishing bobber catches a fish. Water uses this to create extra water bubbles and to make a splash sound. /// </summary>
<param name="proj">The projectile instance thats fishing in the liquid.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PlayerLiquidMovement(Terraria.Player,System.Boolean,System.Boolean)">
<summary>
Allows the user to specify how the liquid interacts with the player (especially player movement). <br/>
Please see <see cref="P:Terraria.Player.WaterCollision" />, <see cref="P:Terraria.Player.HoneyCollision" />, or <see cref="P:Terraria.Player.ShimmerCollision" /> to see how vanilla handles it's liquid collision. <br/>
Return true for the liquid to use the normal liquid collision code. <br/>
Returns true by default.
</summary>
<param name="player">The player instance thats being effected by the liquid.</param>
<param name="fallThrough">Whether or not the player is falling through the liquid.</param>
<param name="ignorePlats">Whether or not the player ignores platforms when falling.</param>
<returns></returns>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.PlayerGravityModifier(Terraria.Player,System.Single@,System.Single@,System.Int32@,System.Single@)">
<summary>
Allows the user to specify how the liquid interacts with the player (especially player gravity). <br/>
Please see <see cref="P:Terraria.Player.Update" />, to see how vanilla handles it's liquid gravity.
</summary>
<param name="player">The player instance thats being effected by the liquid.</param>
<param name="gravity">The current player.gravity being changed.</param>
<param name="maxFallSpeed">The current player.maxFallSpeed being changed.</param>
<param name="jumpHeight">The current Player.jumpHeight being changed.</param>
<param name="jumpSpeed">The current Player.jumpSpeed being changed.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.ItemLiquidCollision(Terraria.Item,Microsoft.Xna.Framework.Vector2@,System.Single@,System.Single@)">
<summary>
Allows the user to specify how the liquid interacts with an item (especially item gravity and movement). <br/>
Please see <see cref="P:Terraria.Item.UpdateItem" />, to see how vanilla handles it's liquid collision. <br/> <br/>
This method is also used to modify items detected to be in liquids. Use this to do things such as deleting items touching this liquid.
</summary>
<param name="item">The item instance thats being effected by the liquid.</param>
<param name="wetVelocity">The velocity of the item when in the liquid.</param>
<param name="gravity">The gravity of the item.</param>
<param name="maxFallSpeed">The maximum fall speed of the item.</param>
</member>
<member name="M:ModLiquidLib.ModLoader.ModLiquid.NPCLiquidMovement(Terraria.NPC,Microsoft.Xna.Framework.Vector2)">
<summary>
Allows the user to specify how the liquid interacts with an npc (especially npc movement). <br/>
Please see <see cref="P:Terraria.NPC.UpdateCollision" />, to see how vanilla handles it's liquid collision. <br/>
Return true for the liquid to call the method that applies the liquid velocity multiplier. <br/>
Returns true by default.
</summary>
<param name="npc">The npc instance thats being effected by the liquid.</param>
<param name="dryVelocity">The velocity of the NPC before being modified by the liquid.</param>
<returns></returns>
</member>