ofs | hex dump | ascii |
---|
0000 | 42 42 33 44 b6 b4 00 00 01 00 00 00 42 52 55 53 2e 00 00 00 01 00 00 00 42 72 75 73 68 2e 30 30 | BB3D........BRUS........Brush.00 |
0020 | 31 00 00 00 80 3f 00 00 80 3f 00 00 80 3f 00 00 80 3f 00 00 00 00 01 00 00 00 00 00 00 00 ff ff | 1....?...?...?...?.............. |
0040 | ff ff 4e 4f 44 45 74 b4 00 00 64 74 72 61 63 6b 5f 73 77 72 73 74 5f 33 30 00 00 00 00 00 00 00 | ..NODEt...dtrack_swrst_30....... |
0060 | 00 bf 00 00 00 00 00 00 80 3f 00 00 80 3f 00 00 80 3f 63 2f 79 3f 00 00 00 00 75 b3 6a be 00 00 | .........?...?...?c/y?....u.j... |
0080 | 00 00 4d 45 53 48 34 b4 00 00 ff ff ff ff 56 52 54 53 8c 98 00 00 01 00 00 00 01 00 00 00 02 00 | ..MESH4.......VRTS.............. |
00a0 | 00 00 93 ba b2 3e 28 5c 0f 3e 4a 7c 91 be 69 a9 34 3f 66 cb 32 3f e6 41 f3 3d a5 ff 00 3e 24 e4 | .....>(\.>J|..i.4?f.2?.A.=...>$. |
00c0 | 04 3f ef 6d 9c 3e 28 5c 0f 3e fe b2 88 be 66 e7 32 bf 6e ed 36 3f fa 01 fd bc 4b 1f 37 3e 27 e4 | .?.m.>(\.>....f.2.n.6?....K.7>'. |
00e0 | 04 3f f7 f5 9c 3e 28 5c 0f 3e 22 b1 b7 be 64 0d 32 bf 70 d1 37 3f a2 c1 d0 3c 4c 1f 37 3e 34 13 | .?...>(\.>"...d.2.p.7?...<L.7>4. |
0100 | dd 3e 42 81 b9 3e 28 5c 0f 3e 72 38 c6 be 6f 63 37 3f 64 11 32 3f bd a1 5e 3d a4 ff 00 3e 2e 13 | .>B..>(\.>r8..oc7?d.2?..^=...>.. |
0120 | dd 3e 94 e7 a6 3e 28 5c 0f 3e d4 a2 31 be 63 81 31 3f 68 fb 33 3f 43 89 21 3e a7 ff 00 3e b1 3e | .>...>(\.>..1.c.1?h.3?C.!>...>.> |
0140 | 1b 3f 82 8f 98 3e 28 5c 0f 3e 14 3a 2d be 69 bb 34 bf 6a cf 34 3f aa e1 54 bd 4a 1f 37 3e b3 3e | .?...>(\.>.:-.i.4.j.4?..T.J.7>.> |
0160 | 1b 3f ef 6d 9c 3e 28 5c 0f 3e fe b2 88 be 66 e7 32 bf 6e ed 36 3f fa 01 fd bc 4b 1f 37 3e 27 e4 | .?.m.>(\.>....f.2.n.6?....K.7>'. |
0180 | 04 3f 93 ba b2 3e 28 5c 0f 3e 4a 7c 91 be 69 a9 34 3f 66 cb 32 3f e6 41 f3 3d a5 ff 00 3e 24 e4 | .?...>(\.>J|..i.4?f.2?.A.=...>$. |
01a0 | 04 3f c8 1e 96 3e c8 ba 22 3d 60 f7 25 bd e7 45 f3 3e 2c 2d 16 bf 50 e1 27 3f ca 00 96 3e 3c 99 | .?...>.."=`.%..E.>,-..P.'?...><. |
01c0 | 31 3f 94 e7 a6 3e c8 ba 22 3d d4 a2 31 be 63 81 31 3f 68 fb 33 bf 43 89 21 3e cb 00 96 3e af 3e | 1?...>.."=..1.c.1?h.3.C.!>...>.> |
01e0 | 1b 3f 82 8f 98 3e c8 ba 22 3d 14 3a 2d be 69 bb 34 bf 6a cf 34 bf aa e1 54 bd e4 e1 75 3e b3 3e | .?...>.."=.:-.i.4.j.4...T...u>.> |
0200 | 1b 3f 14 f5 93 3e c8 ba 22 3d 48 44 27 bd 3c 13 1e bf 28 dd 13 bf 11 ad 08 3f e0 e1 75 3e 40 99 | .?...>.."=HD'.<...(......?..u>@. |
0220 | 31 3f 82 8f 98 3e 28 5c 0f 3e 14 3a 2d be 69 bb 34 bf 6a cf 34 3f aa e1 54 bd 4a 1f 37 3e b3 3e | 1?...>(\.>.:-.i.4.j.4?..T.J.7>.> |
0240 | 1b 3f 94 e7 a6 3e 28 5c 0f 3e d4 a2 31 be 63 81 31 3f 68 fb 33 3f 43 89 21 3e a7 ff 00 3e b1 3e | .?...>(\.>..1.c.1?h.3?C.!>...>.> |
0260 | 1b 3f c8 1e 96 3e 28 5c 0f 3e 60 f7 25 bd e7 45 f3 3e 2c 2d 16 3f 50 e1 27 3f a9 ff 00 3e 3e 99 | .?...>(\.>`.%..E.>,-.?P.'?...>>. |
0280 | 31 3f 14 f5 93 3e 28 5c 0f 3e 48 44 27 bd 3c 13 1e bf 28 dd 13 3f 11 ad 08 3f 4a 1f 37 3e 40 99 | 1?...>(\.>HD'.<...(..?...?J.7>@. |
02a0 | 31 3f ce 6c b6 3e c8 ba 22 3d 95 78 13 bf 6d ab 36 3f 62 f7 30 bf d2 f1 e8 bd ce 00 96 3e fe a8 | 1?.l.>.."=.x..m.6?b.0........>.. |
02c0 | 83 3e 84 f5 a6 3e c8 ba 22 3d 37 82 34 bf 61 99 30 3f 62 d7 30 bf bb a9 5d be cf 00 96 3e cc e7 | .>...>.."=7.4.a.0?b.0...]....>.. |
02e0 | 2d 3e 4c a0 7b 3e c8 ba 22 3d ef 55 2c bf 51 8b 28 bf 70 d7 37 bf ce c1 66 3e f9 e1 75 3e d0 e7 | ->L.{>.."=.U,.Q.(.p.7...f>..u>.. |
0300 | 2d 3e 6d e3 8f 3e c8 ba 22 3d cb 13 0d bf 5b 43 2d bf 70 09 38 bf 44 21 22 3e f5 e1 75 3e 02 a9 | ->m..>.."=....[C-.p.8.D!">..u>.. |
0320 | 83 3e 77 a4 ba 3e c8 ba 22 3d ee 29 f6 be 70 fd 37 3f 64 e7 31 bf 70 01 b8 bc ce 00 96 3e 16 5e | .>w..>.."=.)..p.7?d.1.p......>.^ |
0340 | b0 3e ce 6c b6 3e c8 ba 22 3d 95 78 13 bf 6d ab 36 3f 62 f7 30 bf d2 f1 e8 bd ce 00 96 3e fe a8 | .>.l.>.."=.x..m.6?b.0........>.. |
0360 | 83 3e 6d e3 8f 3e c8 ba 22 3d cb 13 0d bf 5b 43 2d bf 70 09 38 bf 44 21 22 3e f5 e1 75 3e 02 a9 | .>m..>.."=....[C-.p.8.D!">..u>.. |
0380 | 83 3e c6 d0 98 3e c8 ba 22 3d e6 94 e8 be 61 b3 30 bf 6f bf 37 bf 76 c1 ba 3d f1 e1 75 3e 1c 5e | .>...>.."=....a.0.o.7.v..=..u>.^ |
03a0 | b0 3e 42 81 b9 3e c8 ba 22 3d 72 38 c6 be 6f 63 37 3f 64 11 32 bf bd a1 5e 3d cd 00 96 3e 2e 13 | .>B..>.."=r8..oc7?d.2...^=...>.. |
03c0 | dd 3e 77 a4 ba 3e c8 ba 22 3d ee 29 f6 be 70 fd 37 3f 64 e7 31 bf 70 01 b8 bc ce 00 96 3e 16 5e | .>w..>.."=.)..p.7?d.1.p......>.^ |
03e0 | b0 3e c6 d0 98 3e c8 ba 22 3d e6 94 e8 be 61 b3 30 bf 6f bf 37 bf 76 c1 ba 3d f1 e1 75 3e 1c 5e | .>...>.."=....a.0.o.7.v..=..u>.^ |
0400 | b0 3e f7 f5 9c 3e c8 ba 22 3d 22 b1 b7 be 64 0d 32 bf 70 d1 37 bf a2 c1 d0 3c ed e1 75 3e 34 13 | .>...>.."="...d.2.p.7....<..u>4. |
0420 | dd 3e 93 ba b2 3e c8 ba 22 3d 4a 7c 91 be 69 a9 34 3f 66 cb 32 bf e6 41 f3 3d cc 00 96 3e 23 e4 | .>...>.."=J|..i.4?f.2..A.=...>#. |
0440 | 04 3f 42 81 b9 3e c8 ba 22 3d 72 38 c6 be 6f 63 37 3f 64 11 32 bf bd a1 5e 3d cd 00 96 3e 2e 13 | .?B..>.."=r8..oc7?d.2...^=...>.. |
0460 | dd 3e f7 f5 9c 3e c8 ba 22 3d 22 b1 b7 be 64 0d 32 bf 70 d1 37 bf a2 c1 d0 3c ed e1 75 3e 34 13 | .>...>.."="...d.2.p.7....<..u>4. |
0480 | dd 3e ef 6d 9c 3e c8 ba 22 3d fe b2 88 be 66 e7 32 bf 6e ed 36 bf fa 01 fd bc e8 e1 75 3e 27 e4 | .>.m.>.."=....f.2.n.6.......u>'. |
04a0 | 04 3f 94 e7 a6 3e c8 ba 22 3d d4 a2 31 be 63 81 31 3f 68 fb 33 bf 43 89 21 3e cb 00 96 3e af 3e | .?...>.."=..1.c.1?h.3.C.!>...>.> |
04c0 | 1b 3f 93 ba b2 3e c8 ba 22 3d 4a 7c 91 be 69 a9 34 3f 66 cb 32 bf e6 41 f3 3d cc 00 96 3e 23 e4 | .?...>.."=J|..i.4?f.2..A.=...>#. |
04e0 | 04 3f ef 6d 9c 3e c8 ba 22 3d fe b2 88 be 66 e7 32 bf 6e ed 36 bf fa 01 fd bc e8 e1 75 3e 27 e4 | .?.m.>.."=....f.2.n.6.......u>'. |
0500 | 04 3f 82 8f 98 3e c8 ba 22 3d 14 3a 2d be 69 bb 34 bf 6a cf 34 bf aa e1 54 bd e4 e1 75 3e b3 3e | .?...>.."=.:-.i.4.j.4...T...u>.> |
0520 | 1b 3f 94 e7 a6 3e 28 5c 0f 3e d4 a2 31 be 63 81 31 3f 68 fb 33 3f 43 89 21 3e a7 ff 00 3e b1 3e | .?...>(\.>..1.c.1?h.3?C.!>...>.> |
0540 | 1b 3f 94 e7 a6 3e c8 ba 22 3d d4 a2 31 be 63 81 31 3f 68 fb 33 bf 43 89 21 3e f6 79 84 3d af 3e | .?...>.."=..1.c.1?h.3.C.!>.y.=.> |
0560 | 1b 3f c8 1e 96 3e c8 ba 22 3d 60 f7 25 bd e7 45 f3 3e 2c 2d 16 bf 50 e1 27 3f f1 79 84 3d 3c 99 | .?...>.."=`.%..E.>,-..P.'?.y.=<. |
0580 | 31 3f c8 1e 96 3e 28 5c 0f 3e 60 f7 25 bd e7 45 f3 3e 2c 2d 16 3f 50 e1 27 3f a9 ff 00 3e 3e 99 | 1?...>(\.>`.%..E.>,-.?P.'?...>>. |
05a0 | 31 3f 4c a0 7b 3e 28 5c 0f 3e ef 55 2c bf 51 8b 28 bf 70 d7 37 3f ce c1 66 3e 4d 1f 37 3e d0 e7 | 1?L.{>(\.>.U,.Q.(.p.7?..f>M.7>.. |
05c0 | 2d 3e 4c a0 7b 3e c8 ba 22 3d ef 55 2c bf 51 8b 28 bf 70 d7 37 bf ce c1 66 3e f9 e1 75 3e d0 e7 | ->L.{>.."=.U,.Q.(.p.7...f>..u>.. |
05e0 | 2d 3e d0 f0 45 3e c8 ba 22 3d 2f 20 4e bf 81 89 40 bf 28 0f 14 bf 43 b9 a1 be fd e1 75 3e 38 fb | ->..E>.."=/.N...@.(...C.....u>8. |
0600 | a8 3d d0 f0 45 3e 28 5c 0f 3e 2f 20 4e bf 81 89 40 bf 28 0f 14 3f 43 b9 a1 be 4d 1f 37 3e 38 fb | .=..E>(\.>/.N...@.(..?C...M.7>8. |
0620 | a8 3d c8 1e 96 3e 28 5c 0f 3e 60 f7 25 bd e7 45 f3 3e 2c 2d 16 3f 50 e1 27 3f a9 ff 00 3e 3e 99 | .=...>(\.>`.%..E.>,-.?P.'?...>>. |
0640 | 31 3f c8 1e 96 3e c8 ba 22 3d 60 f7 25 bd e7 45 f3 3e 2c 2d 16 bf 50 e1 27 3f f1 79 84 3d 3c 99 | 1?...>.."=`.%..E.>,-..P.'?.y.=<. |
0660 | 31 3f 14 f5 93 3e c8 ba 22 3d 48 44 27 bd 3c 13 1e bf 28 dd 13 bf 11 ad 08 3f f1 79 84 3d 2a 21 | 1?...>.."=HD'.<...(......?.y.=*! |
0680 | 3f 3f 14 f5 93 3e 28 5c 0f 3e 48 44 27 bd 3c 13 1e bf 28 dd 13 3f 11 ad 08 3f ac ff 00 3e 2a 21 | ??...>(\.>HD'.<...(..?...?...>*! |
06a0 | 3f 3f 84 f5 a6 3e 28 5c 0f 3e 37 82 34 bf 61 99 30 3f 62 d7 30 3f bb a9 5d be 9f ff 00 3e c8 e7 | ??...>(\.>7.4.a.0?b.0?..]....>.. |
06c0 | 2d 3e 4c a0 7b 3e 28 5c 0f 3e ef 55 2c bf 51 8b 28 bf 70 d7 37 3f ce c1 66 3e 4d 1f 37 3e d0 e7 | ->L.{>(\.>.U,.Q.(.p.7?..f>M.7>.. |
06e0 | 2d 3e d0 f0 45 3e 28 5c 0f 3e 2f 20 4e bf 81 89 40 bf 28 0f 14 3f 43 b9 a1 be 4d 1f 37 3e 38 fb | ->..E>(\.>/.N...@.(..?C...M.7>8. |
0700 | a8 3d 20 cb 8b 3e 28 5c 0f 3e af b1 56 bf 44 fd a1 3e 27 8b 13 3f 82 e1 40 bf 9e ff 00 3e 28 fb | .=...>(\.>..V.D..>'..?..@....>(. |
0720 | a8 3d d0 f0 45 3e 28 5c 0f 3e 2f 20 4e bf 81 89 40 bf 28 0f 14 3f 43 b9 a1 be 9a ff 00 3e e0 ef | .=..E>(\.>/.N...@.(..?C......>.. |
0740 | f2 3c d0 f0 45 3e c8 ba 22 3d 2f 20 4e bf 81 89 40 bf 28 0f 14 bf 43 b9 a1 be 0e 7a 84 3d e0 ef | .<..E>.."=/.N...@.(...C....z.=.. |
0760 | f2 3c 20 cb 8b 3e c8 ba 22 3d af b1 56 bf 44 fd a1 3e 27 8b 13 bf 82 e1 40 bf 15 7a 84 3d 28 fb | .<...>.."=..V.D..>'.....@..z.=(. |
0780 | a8 3d 20 cb 8b 3e 28 5c 0f 3e af b1 56 bf 44 fd a1 3e 27 8b 13 3f 82 e1 40 bf 9e ff 00 3e 28 fb | .=...>(\.>..V.D..>'..?..@....>(. |
07a0 | a8 3d 84 f5 a6 3e c8 ba 22 3d 37 82 34 bf 61 99 30 3f 62 d7 30 bf bb a9 5d be cf 00 96 3e cc e7 | .=...>.."=7.4.a.0?b.0...]....>.. |
07c0 | 2d 3e 20 cb 8b 3e c8 ba 22 3d af b1 56 bf 44 fd a1 3e 27 8b 13 bf 82 e1 40 bf d0 00 96 3e 38 fb | ->...>.."=..V.D..>'.....@....>8. |
07e0 | a8 3d d0 f0 45 3e c8 ba 22 3d 2f 20 4e bf 81 89 40 bf 28 0f 14 bf 43 b9 a1 be fd e1 75 3e 38 fb | .=..E>.."=/.N...@.(...C.....u>8. |
0800 | a8 3d 4c a0 7b 3e c8 ba 22 3d ef 55 2c bf 51 8b 28 bf 70 d7 37 bf ce c1 66 3e f9 e1 75 3e d0 e7 | .=L.{>.."=.U,.Q.(.p.7...f>..u>.. |
0820 | 2d 3e 42 81 b9 3e 28 5c 0f 3e 72 38 c6 be 6f 63 37 3f 64 11 32 3f bd a1 5e 3d a4 ff 00 3e 2e 13 | ->B..>(\.>r8..oc7?d.2?..^=...>.. |
0840 | dd 3e f7 f5 9c 3e 28 5c 0f 3e 22 b1 b7 be 64 0d 32 bf 70 d1 37 3f a2 c1 d0 3c 4c 1f 37 3e 34 13 | .>...>(\.>"...d.2.p.7?...<L.7>4. |
0860 | dd 3e c6 d0 98 3e 28 5c 0f 3e e6 94 e8 be 61 b3 30 bf 6f bf 37 3f 76 c1 ba 3d 4c 1f 37 3e 1c 5e | .>...>(\.>....a.0.o.7?v..=L.7>.^ |
0880 | b0 3e 77 a4 ba 3e 28 5c 0f 3e ee 29 f6 be 70 fd 37 3f 64 e7 31 3f 70 01 b8 bc a2 ff 00 3e 14 5e | .>w..>(\.>.)..p.7?d.1?p......>.^ |
08a0 | b0 3e 77 a4 ba 3e 28 5c 0f 3e ee 29 f6 be 70 fd 37 3f 64 e7 31 3f 70 01 b8 bc a2 ff 00 3e 14 5e | .>w..>(\.>.)..p.7?d.1?p......>.^ |
08c0 | b0 3e c6 d0 98 3e 28 5c 0f 3e e6 94 e8 be 61 b3 30 bf 6f bf 37 3f 76 c1 ba 3d 4c 1f 37 3e 1c 5e | .>...>(\.>....a.0.o.7?v..=L.7>.^ |
08e0 | b0 3e 6d e3 8f 3e 28 5c 0f 3e cb 13 0d bf 5b 43 2d bf 70 09 38 3f 44 21 22 3e 4c 1f 37 3e 02 a9 | .>m..>(\.>....[C-.p.8?D!">L.7>.. |
0900 | 83 3e ce 6c b6 3e 28 5c 0f 3e 95 78 13 bf 6d ab 36 3f 62 f7 30 3f d2 f1 e8 bd a0 ff 00 3e fc a8 | .>.l.>(\.>.x..m.6?b.0?.......>.. |
0920 | 83 3e ce 6c b6 3e 28 5c 0f 3e 95 78 13 bf 6d ab 36 3f 62 f7 30 3f d2 f1 e8 bd a0 ff 00 3e fc a8 | .>.l.>(\.>.x..m.6?b.0?.......>.. |
0940 | 83 3e 6d e3 8f 3e 28 5c 0f 3e cb 13 0d bf 5b 43 2d bf 70 09 38 3f 44 21 22 3e 4c 1f 37 3e 02 a9 | .>m..>(\.>....[C-.p.8?D!">L.7>.. |
0960 | 83 3e 4c a0 7b 3e 28 5c 0f 3e ef 55 2c bf 51 8b 28 bf 70 d7 37 3f ce c1 66 3e 4d 1f 37 3e d0 e7 | .>L.{>(\.>.U,.Q.(.p.7?..f>M.7>.. |
0980 | 2d 3e 84 f5 a6 3e 28 5c 0f 3e 37 82 34 bf 61 99 30 3f 62 d7 30 3f bb a9 5d be 9f ff 00 3e c8 e7 | ->...>(\.>7.4.a.0?b.0?..]....>.. |
09a0 | 2d 3e 82 8f 98 3e c8 ba 22 3d 14 3a 2d be 69 bb 34 bf 6a cf 34 bf aa e1 54 bd e4 e1 75 3e b3 3e |
#include "gamedef.h"
#include "collision.h"
#include <stdlib.h>
#include "util/numeric.h"
#include "light.h"
#include "environment.h"
#include "clientmap.h"
#include "mapnode.h"
/*
Utility
*/
v3f random_v3f(v3f min, v3f max)
{
return v3f( rand()/(float)RAND_MAX*(max.X-min.X)+min.X,
rand()/(float)RAND_MAX*(max.Y-min.Y)+min.Y,
rand()/(float)RAND_MAX*(max.Z-min.Z)+min.Z);
}
std::vector<Particle*> all_particles;
std::map<u32, ParticleSpawner*> all_particlespawners;
Particle::Particle(
IGameDef *gamedef,
scene::ISceneManager* smgr,
LocalPlayer *player,
ClientEnvironment &env,
v3f pos,
v3f velocity,
v3f acceleration,
float expirationtime,
float size,
bool collisiondetection,
bool vertical,
video::ITexture *texture,
v2f texpos,
v2f texsize
):
scene::ISceneNode(smgr->getRootSceneNode(), smgr)
{
// Misc
m_gamedef = gamedef;
m_env = &env;
// Texture
m_ma....[C-.p.8?D!">L.7>.. |
0c40 | 83 3e 6d e3 8f 3e c8 ba 22 3d cb 13 0d bf 5b 43 2d bf 70 09 38 bf 44 21 22 3e f5 e1 75 3e 02 a9 | .>m..>.."=....[C-.p.8.D!">..u>.. |
0c60 | 83 3e 4c a0 7b 3e c8 ba 22 3d ef 55 2c bf 51 8b 28 bf 70 d7 37 bf ce c1 66 3e f9 e1 75 3e d0 e7 | .>L.{>.."=.U,.Q.(.p.7...f>..u>.. |
0c80 | 2d 3e 4c a0 7b 3e 28 5c 0f 3e ef 55 2c bf 51 8b 28 bf 70 d7 37 3f ce c1 66 3e 4d 1f 37 3e d0 e7 | ->L.{>(\.>.U,.Q.(.p.7?..f>M.7>.. |
0ca0 | 2d 3e 20 cb 8b 3e 28 5c 0f 3e af b1 56 bf 44 fd a1 3e 27 8b 13 3f 82 e1 40 bf 9e ff 00 3e 28 fb | ->...>(\.>..V.D..>'..?..@....>(. |
0cc0 | a8 3d 20 cb 8b 3e c8 ba 22 3d af b1 56 bf 44 fd a1 3e 27 8b 13 bf 82 e1 40 bf 15 7a 84 3d 28 fb | .=...>.."=..V.D..>'.....@..z.=(. |
0ce0 | a8 3d 84 f5 a6 3e c8 ba 22 3d 37 82 34 bf 61 99 30 3f 62 d7 30 bf bb a9 5d be 10 7a 84 3d c8 e7 | .=...>.."=7.4.a.0?b.0...]..z.=.. |
0d00 | 2d 3e 84 f5 a6 3e 28 5c 0f 3e 37 82 34 bf 61 99 30 3f 62 d7 30 3f bb a9 5d be 9f ff 00 3e c8 e7 | ->...>(\.>7.4.a.0?b.0?..]....>.. |
0d20 | 2d 3e 84 f5 a6 3e 28 5c 0f 3e 37 82 34 bf 61 99 30 3f 62 d7 30 3f bb a9 5d be 9f ff 00 3e c8 e7 | ->...>(\.>7.4.a.0?b.0?..]....>.. |
0d40 | 2d 3e 84 f5 a6 3e c8 ba 22 3d 37 82 34 bf 61 99 30 3f 62 d7 30 bf bb a9 5d be 10 7a 84 3d c8 e7 | ->...>.."=7.4.a.0?b.0...]..z.=.. |
0d60 | 2d 3e ce 6c b6 3e c8 ba 22 3d 95 78 13 bf 6d ab 36 3f 62 f7 30 bf d2 f1 e8 bd 0a 7a 84 3d fc a8 | ->.l.>.."=.x..m.6?b.0......z.=.. |
0d80 | 83 3e ce 6c b6 3e 28 5c 0f 3e 95 78 13 bf 6d ab 36 3f 62 f7 30 3f d2 f1 e8 bd a0 ff 00 3e fc a8 | .>.l.>(\.>.x..m.6?b.0?.......>.. |
0da0 | 83 3e ce 6c b6 3e 28 5c 0f 3e 95 78 13 bf 6d ab 36 3f 62 f7 30 3f d2 f1 e8 bd a0 ff 00 3e fc a8 | .>.l.>(\.>.x..m.6?b.0?.......>.. |
0dc0 | 83 3e ce 6c b6 3e c8 ba 22 3d 95 78 13 bf 6d ab 36 3f 62 f7 30 bf d2 f1 e8 bd 0a 7a 84 3d fc a8 | .>.l.>.."=.x..m.6?b.0......z.=.. |
0de0 | 83 3e 77 a4 ba 3e c8 ba 22 3d ee 29 f6 be 70 fd 37 3f 64 e7 31 bf 70 01 b8 bc 05 7a 84 3d 14 5e | .>w..>.."=.)..p.7?d.1.p....z.=.^ |
0e00 | b0 3e 77 a4 ba 3e 28 5c 0f 3e ee 29 f6 be 70 fd 37 3f 64 e7 31 3f 70 01 b8 bc a2 ff 00 3e 14 5e | .>w..>(\.>.)..p.7?d.1?p......>.^ |
0e20 | b0 3e 77 a4 ba 3e 28 5c 0f 3e ee 29 f6 be 70 fd 37 3f 64 e7 31 3f 70 01 b8 bc a2 ff 00 3e 14 5e | .>w..>(\.>.)..p.7?d.1?p......>.^ |
0e40 | b0 3e 77 a4 ba 3e c8 ba
// Init model
updateVertices();
all_particles.push_back(this);
}
Particle::~Particle()
{
}
void Particle::OnRegisterSceneNode()
{
if (IsVisible)
{
SceneManager->registerNodeForRendering
(this, scene::ESNRP_TRANSPARENT);
SceneManager->registerNodeForRendering
(this, scene::ESNRP_SOLID);
}
ISceneNode::OnRegisterSceneNode();
}
void Particle::render()
{
// TODO: Render particles in front of water and the selectionbox
video::IVideoDriver* driver = SceneManager->getVideoDriver();
driver->setMaterial(m_material);
driver->setTransform(video::ETS_WORLD, AbsoluteTransformation);
u16 indices[] = {0,1,2, 2,3,0};
driver->drawVertexPrimitiveList(m_vertices, 4,
indices, 2, video::EVT_STANDARD,
scene::EPT_TRIANGLES, video::EIT_16BIT);
}
void Particle::step(float dtime)
{
m_time += dtime;
if (m_collisiondetection)
{
core::aabbox3d<f32> box = m_collisionbox;
v3f p_pos = m_pos*BS;
v3f p_velocity = m_velocity*BS;
v3f p_acceleration = m_acceleration*BS;
collisionMoveSimple(m_env, m_gamedef,
BS*0.5, box,
0, dtime,
p_pos, p_velocity, p_acceleration);
m_pos = p_pos/BS;
m_velocity = p_velocity/BS;
m_acceleration = p_acceleration/BS;
}
else
{
m_velocity += m_acceleration * dtime;
m_pos += m_velocity * dtime;
}
// Update lighting
updateLight();
// Update model
updateVertices();
}
void Particle::updateLight()
{
u8 light = 0;
bool pos_ok;
v3s16 p = v3s16(
floor(m_pos.X+0.5),
floor(m_pos.Y+0.5),
floor(m_pos.Z+0.5)
);
MapNode n = m_env->getClientMap().getNodeNoEx(p, &pos_ok);
if (pos_ok)
light = n.getLightBlend(m_env->getDayNightRatio(), m_gamedef->ndef());
else
light = blend_light(m_env->getDayNightRatio(), LIGHT_SUN, 0);
m_light = decode_light(light);
}
void Particle::updateVertices()
{
video::SColor c(255, m_light, m_light, m_light);
f32 tx0 = m_texpos.X;
f32 tx1 = m_texpos.X + m_texsize.X;
f32 ty0 = m_texpos.Y;
f32 ty1 = m_texpos.Y + m_texsize.Y;
m_vertices[0] = video::S3DVertex(-m_size/2,-m_size/2,0, 0,0,0,
c, tx0, ty1);
m_vertices[1] = video::S3DVertex(m_size/2,-m_size/2,0, 0,0,0,
c, tx1, ty1);
m_vertices[2] = video::S3DVertex(m_size/2,m_size/2,0, 0,0,0,
c, tx1, ty0);
m_vertices[3] = video::S3DVertex(-m_size/2,m_size/2,0, 0,0,0,
c, tx0, ty0);
v3s16 camera_offset = m_env->getCameraOffset();
for(u16 i=0; i<4; i++)
{
if (m_vertical) {
v3f ppos = m_player->getPosition()/BS;
m_vertices[i].Pos.rotateXZBy(atan2(ppos.Z-m_pos.Z, ppos.X-m_pos.X)/core::DEGTORAD+90);
} else {
m_vertices[i].Pos.rotateYZBy(m_player->getPitch());
m_vertices[i].Pos.rotateXZBy(m_player->getYaw());
}
m_box.addInternalPoint(m_vertices[i].Pos);
m_vertices[i].Pos += m_pos*BS - intToFloat(camera_offset, BS);
}
}
/*
Helpers
*/
void allparticles_step (float dtime)
{
for(std::vector<Particle*>::iterator i = all_particles.begin();
i != all_particles.end();)
{
if ((*i)->get_expired())
{
(*i)->remove();
delete *i;
i = all_particles.erase(i);
}
else
{
(*i)->step(dtime);
i++;
}
}
}
void addDiggingParticles(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, ClientEnvironment &env, v3s16 pos,
const TileSpec tiles[])
{
for (u16 j = 0; j < 32; j++) // set the amount of particles here
{
addNodeParticle(gamedef, smgr, player, env, pos, tiles);
}
}
void addPunchingParticles(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, ClientEnvironment &env,
v3s16 pos, const TileSpec tiles[])
{
addNodeParticle(gamedef, smgr, player, env, pos, tiles);
}
// add a particle of a node
// used by digging and punching particles
void addNodeParticle(IGameDef* gamedef, scene::ISceneManager* smgr,
LocalPlayer *player, ClientEnvironment &env, v3s16 pos,
const TileSpec tiles[])
{
// Texture
u8 texid = myrand_range(0,5);
video::ITexture *texture = tiles[texid].texture;
// Only use first frame of animated texture
f32 ymax = 1;
if(tiles[texid].material_flags & MATERIAL_FLAG_ANIMATION_VERTICAL_FRAMES)
ymax /= tiles[texid].animation_frame_count;
float size = rand()%64/512.;
float visual_size = BS*size;
v2f texsize(size*2, ymax*size*2);
v2f texpos;
texpos.X = ((rand()%64)/64 | .>P....."=.s..j.4?j+5.......u>.. |
1b00 | 83 3e ab 80 e1 be c8 ba 22 3d 86 f9 42 be 6b 81 35 3f 69 85 34 bf 30 01 18 3b f1 e1 75 3e 1c 5e | .>......"=..B.k.5?i.4.0..;..u>.^ |
1b20 | b0 3e 50 c7 e1 be 28 5c 0f 3e ae 73 95 be 6a db 34 3f 6a 2b 35 3f e0 01 f0 ba 4c 1f 37 3e 02 a9 | .>P...(\.>.s..j.4?j+5?....L.7>.. |
1b40 | 83 3e 7e c6 e1 be 28 5c 0f 3e cb 10 d8 be 6a e5 34 3f 6a 21 35 3f 80 01 c0 3a 4d 1f 37 3e d0 e7 | .>~...(\.>....j.4?j!5?...:M.7>.. |
1b60 | 2d 3e 7e c6 e1 be c8 ba 22 3d cb 10 d8 be 6a e5 34 3f 6a 21 35 bf 80 01 c0 3a f9 e1 75 3e d0 e7 | ->~....."=....j.4?j!5....:..u>.. |
1b80 | 2d 3e 50 c7 e1 be c8 ba 22 3d ae 73 95 be 6a db 34 3f 6a 2b 35 bf e0 01 f0 ba f5 e1 75 3e 02 a9 | ->P....."=.s..j.4?j+5.......u>.. |
1ba0 | 83 3e 3a df 06 bf 28 5c 0f 3e 68 b2 10 bf 26 2d 13 bf 28 cd 13 3f 29 69 14 bf 9e ff 00 3e 28 fb | .>:...(\.>h...&-..(..?)i.....>(. |
1bc0 | a8 3d 58 06 07 bf 28 5c 0f 3e 59 40 d8 be 6d 97 36 bf 67 5f 33 3f 20 c1 8f 3c 9f ff 00 3e c8 e7 | .=X...(\.>Y@..m.6.g_3?...<...>.. |
1be0 | 2d 3e 58 06 07 bf c8 ba 22 3d 59 40 d8 be 6d 97 36 bf 67 5f 33 bf 20 c1 8f 3c 10 7a 84 3d c8 e7 | ->X....."=Y@..m.6.g_3....<.z.=.. |
1c00 | 2d 3e 3a df 06 bf c8 ba 22 3d 68 b2 10 bf 26 2d 13 bf 28 cd 13 bf 29 69 14 bf 15 7a 84 3d 28 fb | ->:....."=h...&-..(...)i...z.=(. |
1c20 | a8 3d 58 06 07 bf 28 5c 0f 3e 59 40 d8 be 6d 97 36 bf 67 5f 33 3f 20 c1 8f 3c 9f ff 00 3e c8 e7 | .=X...(\.>Y@..m.6.g_3?...<...>.. |
1c40 | 2d 3e 0e 38 05 bf 28 5c 0f 3e 46 ae 94 be 6c df 35 bf 67 95 33 3f c9 a1 64 3d a0 ff 00 3e fc a8 | ->.8..(\.>F...l.5.g.3?..d=...>.. |
1c60 | 83 3e 0e 38 05 bf c8 ba 22 3d 46 ae 94 be 6c df 35 bf 67 95 33 bf c9 a1 64 3d 0a 7a 84 3d fc a8 | .>.8...."=F...l.5.g.3...d=.z.=.. |
1c80 | 83 3e 58 06 07 bf c8 ba 22 3d 59 40 d8 be 6d 97 36 bf 67 5f 33 bf 20 c1 8f 3c 10 7a 84 3d c8 e7 | .>X....."=Y@..m.6.g_3....<.z.=.. |
1ca0 | 2d 3e 0e 38 05 bf 28 5c 0f 3e 46 ae 94 be 6c df 35 bf 67 95 33 3f c9 a1 64 3d a0 ff 00 3e fc a8 | ->.8..(\.>F...l.5.g.3?..d=...>.. |
1cc0 | 83 3e 5a b2 02 bf 28 5c 0f 3e 6c 37 48 be 6a df 34 bf 67 b1 33 3f 70 31 b8 3d a2 ff 00 3e 14 5e | .>Z...(\.>l7H.j.4.g.3?p1.=...>.^ |
1ce0 | b0 3e 5a b2 02 bf c8 ba 22 3d 6c 37 48 be 6a df 34 bf 67 b1 33 bf 70 31 b8 3d 05 7a 84 3d 14 5e | .>Z....."=l7H.j.4.g.3.p1.=.z.=.^ |
1d00 | b0 3e 0e 38 05 bf c8 ba 22 3d 46 ae 94 be 6c df 35 bf 67 95 33 bf c9 a1 64 3d 0a 7a 84 3d fc a8 | .>.8...."=F...l.5.g.3...d=.z.=.. |
1d20 | 83 3e 5a b2 02 bf 28 5c 0f 3e 6c 37 48 be 6a df 34 bf 67 b1 33 3f 70 31 b8 3d a2 ff 00 3e 14 5e | .>Z...(\.>l7H.j.4.g.3?p1.=...>.^ |
1d40 | b0 3e 2e 54 fe be 28 5c 0f 3e 32 2a d5 bd 64 39 32 bf 6d 5b 36 3f 6b 71 b5 3d a4 ff 00 3e 2e 13 | .>.T..(\.>2*..d92.m[6?kq.=...>.. |
1d60 | dd 3e 2e 54 fe be c8 ba 22 3d 32 2a d5 bd 64 39 32 bf 6d 5b 36 bf 6b 71 b5 3d 00 7a 84 3d 2c 13 | .>.T...."=2*..d92.m[6.kq.=.z.=,. |
1d80 | dd 3e 5a b2 02 bf c8 ba 22 3d 6c 37 48 be 6a df 34 bf 67 b1 33 bf 70 31 b8 3d 05 7a 84 3d 14 5e | .>Z....."=l7H.j.4.g.3.p1.=.z.=.^ |
1da0 | b0 3e 2e 54 fe be 28 5c 0f 3e 32 2a d5 bd 64 39 32 bf 6d 5b 36 3f 6b 71 b5 3d a4 ff 00 3e 2e 13 | .>.T..(\.>2*..d92.m[6?kq.=...>.. |
1dc0 | dd 3e e5 10 f9 be 28 5c 0f 3e 00 ef a5 bb 68 29 34 bf 6a d7 34 3f 34 f1 99 3d a5 ff 00 3e 24 e4 | .>....(\.>....h)4.j.4?4..=...>$. |
1de0 | 04 3f e5 10 f9 be c8 ba 22 3d 00 ef a5 bb 68 29 34 bf 6a d7 34 bf 34 f1 99 3d fb 79 84 3d 23 e4 | .?......"=....h)4.j.4.4..=.y.=#. |
1e00 | 04 3f 2e 54 fe be c8 ba 22 3d 32 2a d5 bd 64 39 32 bf 6d 5b 36 bf 6b 71 b5 3d 00 7a 84 3d 2c 13 | .?.T...."=2*..d92.m[6.kq.=.z.=,. |
1e20 | dd 3e e5 10 f9 be 28 5c 0f 3e 00 ef a5 bb 68 29 34 bf 6a d7 34 3f 34 f1 99 3d a5 ff 00 3e 24 e4 | .>....(\.>....h)4.j.4?4..=...>$. |
1e40 | 04 3f dc 33 f3 be 28 5c 0f 3e b4 21 cb 3d 6a e1 34 bf 67 69 33 3f 90 21 c8 3d a7 ff 00 3e b1 3e | .?.3..(\.>.!.=j.4.gi3?.!.=...>.> |
1e60 | 1b 3f dc 33 f3 be c8 ba 22 3d b4 21 cb 3d 6a e1 34 bf 67 69 33 bf 90 21 c8 3d f6 79 84 3d af 3e | .?.3...."=.!.=j.4.gi3..!.=.y.=.> |
1e80 | 1b 3f e5 10 f9 be c8 ba 22 3d 00 ef a5 bb 68 29 34 bf 6a d7 34 bf 34 f1 99 3d fb 79 84 3d 23 e4 | .?......"=....h)4.j.4.4..=.y.=#. |
1ea0 | 04 3f 91 d8 0a bf 18 85 eb 3d 10 03 6d 3e 84 fb 41 bf 4e cd 26 bf 21 a1 10 3d 5d aa 04 3f de 2b | .?.......=..m>..A.N.&.!..=]..?.+ |
1ec0 | 06 3f ba 5b 0c bf 1c 85 eb 3d 60 39 f4 3d 80 11 40 bf 51 8f 28 bf e4 41 72 3d 5a aa 04 3f 6e 91 | .?.[.....=`9.=..@.Q.(..Ar=Z..?n. |
1ee0 | de 3e 6a 75 0c bf 26 5c 0f 3e 00 4f f4 3d 69 6d 34 bf 6a 0b 35 3f c8 c1 63 3d 06 a9 00 3f 6e 91 | .>ju..&\.>.O.=im4.j.5?..c=...?n. |
1f00 | de 3e 69 de 0a bf 26 5c 0f 3e 6c 06 6d 3e 6a e1 34 bf 6a f3 34 3f 0e c1 06 3d 0a a9 00 3f de 2b | .>i...&\.>l.m>j.4.j.4?...=...?.+ |
1f20 | 06 3f 8a e5 07 bf 18 85 eb 3d 99 e4 02 3f 32 35 19 bf 0d a9 06 bf 35 af 1a 3f 64 aa 04 3f 2a f2 | .?.......=...?25......5..?d..?*. |
1f40 | 33 3f bf a8 09 bf 18 85 eb 3d 80 a8 b3 3e 86 c1 42 bf 4c f1 25 bf 00 c2 ff 3c 60 aa 04 3f 04 0f | 3?.......=...>..B.L.%....<`..?.. |
1f60 | 1d 3f ec a8 09 bf 26 5c 0f 3e b6 a8 b3 3e 6a 0b 35 bf 6a d5 34 3f dc c1 ed 3c 0f a9 00 3f 04 0f | .?....&\.>...>j.5.j.4?...<...?.. |
1f80 | 1d 3f a0 e5 07 bf 24 5c 0f 3e a3 e4 02 3f 1e 07 0f bf 28 29 14 3f 30 11 18 3f
}
ParticleSpawner::~ParticleSpawner() {}
void ParticleSpawner::step(float dtime, ClientEnvironment &env)
{
m_time += dtime;
if (m_spawntime != 0) // Spawner exists for a predefined timespan
{
for(std::vector<float>::iterator i = m_spawntimes.begin();
i != m_spawntimes.end();)
{
if ((*i) <= m_time && m_amount > 0)
{
m_amount--;
v3f pos = random_v3f(m_minpos, m_maxpos);
v3f vel = random_v3f(m_minvel, m_maxvel);
v3f acc = random_v3f(m_minacc, m_maxacc);
float exptime = rand()/(float)RAND_MAX
*(m_maxexptime-m_minexptime)
+m_minexptime;
float size = rand()/(float)RAND_MAX
*(m_maxsize-m_minsize)
+m_minsize;
new Particle(
m_gamedef,
m_smgr,
m_player,
env,
pos,
vel, | .=......#=."....a>.Cn?+e.....>.. |
21a0 | 9d 3d 82 84 1d bf 10 d7 23 3d fd 22 0a bf c3 a1 61 3e dd 43 6e 3f 2b 65 95 be 64 b7 db 3e c0 ac | .=......#=."....a>.Cn?+e..d..>.. |
21c0 | 6d 3c 3d 83 2c bf 90 c2 75 3d 93 1e 05 bf 86 c1 c2 3d 1b 95 8d 3e ea cd 74 bf fa 81 ef 3e 20 5f | m<=.,...u=.......=...>..t....>._ |
21e0 | dd 3c ba 82 32 bf 90 c2 75 3d cc 1c 03 bf 54 21 2a bf 3e f9 9e 3e 5c fb 2d bf 99 6c f7 3e 20 5f | .<..2...u=....T!*.>..>\.-..l.>._ |
2200 | dd 3c 70 81 41 bf 10 d7 23 3d c6 30 fc be 62 05 b1 be df 59 6f 3f 44 11 a2 bd 96 9b 05 3f c0 ab | .<p.A...#=.0..b....Yo?D......?.. |
2220 | 6d 3c 78 9c 11 bf 00 d7 23 3d 9a 57 b4 3e 3a e9 9c be e7 a7 73 3f 9e 01 4f 3c ea 16 1c 3f 02 0f | m<x.....#=.W.>:.....s?..O<...?.. |
2240 | 1d 3f 62 b5 01 bf 80 c2 75 3d d6 f9 b2 3e 9e c9 4e bf 2d a9 16 3f 12 c1 08 3d 2c b0 11 3f 03 0f | .?b.....u=...>..N.-..?...=,..?.. |
2260 | 1d 3f 53 ed ff be 80 c2 75 3d f3 be 02 3f 89 6d c4 be 27 6d 93 3e c1 9d 60 3f 2e b0 11 3f 2a f2 | .?S.....u=...?.m..'m.>..`?...?*. |
2280 | 33 3f ed d4 0f bf f8 d6 23 3d 8a 0a 03 3f 30 e5 97 be de c9 6e 3f a3 89 51 3e ea 16 1c 3f 29 f2 | 3?......#=...?0.....n?..Q>...?). |
22a0 | 33 3f 4f 3c f3 be 80 c2 75 3d f6 a0 02 3f b2 fd d8 3e 34 dd 99 3e b5 bb 5a 3f 3e 82 ef 3e 51 c3 | 3?O<....u=...?...>4..>..Z?>..>Q. |
22c0 | 40 3f e2 83 d3 be f8 d6 23 3d a5 56 02 3f 38 e1 9b 3e de 2d 6f 3f 7c c9 3d 3e b8 b7 db 3e 9a f7 | @?......#=.V.?8..>.-o?|.=>...>.. |
22e0 | 43 3f ed d4 0f bf f8 d6 23 3d 8a 0a 03 3f 30 e5 97 be de c9 6e 3f a3 89 51 3e b8 9b 05 3f 96 f7 | C?......#=...?0.....n?..Q>...?.. |
2300 | 43 3f 53 ed ff be 80 c2 75 3d f3 be 02 3f 89 6d c4 be 27 6d 93 3e c1 9d 60 3f e0 6c f7 3e 50 c3 | C?S.....u=...?.m..'m.>..`?.l.>P. |
2320 | 40 3f af f3 ff be a8 47 e1 3d e5 c0 02 3f 57 55 ab be 2e 3d 97 be ca 13 65 3f de 6c f7 3e 98 c0 | @?.....G.=...?WU...=....e?.l.>.. |
2340 | 38 3f 67 3c f3 be a8 47 e1 3d fc a0 02 3f 7e 09 bf 3e 3b 8d 9d be c0 0f 60 3f 3c 82 ef 3e 99 c0 | 8?g<...G.=...?~..>;.....`?<..>.. |
2360 | 38 3f 4f 3c f3 be 80 c2 75 3d f6 a0 02 3f b2 fd d8 3e 34 dd 99 3e b5 bb 5a 3f 3e 82 ef 3e 51 c3 | 8?O<....u=...?...>4..>..Z?>..>Q. |
2380 | 40 3f 53 ed ff be 80 c2 75 3d f3 be 02 3f 89 6d c4 be 27 6d 93 3e c1 9d 60 3f e0 6c f7 3e 50 c3 | @?S.....u=...?.m..'m.>..`?.l.>P. |
23a0 | 40 3f 14 bb 19 bf 90 c2 75 3d e4 9c ad be 82 2b 41 3f 2d 4b 16 3f 2c 0d 96 be 81 8e c3 3e 10 7d | @?......u=.....+A?-K.?,......>.} |
23c0 | 2a 3e 6c 94 19 bf b0 47 e1 3d 9d a7 ad be 69 7b 34 3f 4f 75 27 bf 18 35 8c be e4 93 d3 3e 08 7d | *>l....G.=....i{4?Ou'..5.....>.} |
23e0 | 2a 3e 3d 83 2c bf b0 47 e1 3d 93 1e 05 bf 72 01 39 3d 25 89 92 be ea 03 75 bf e1 93 d3 3e d8 e0 | *>=.,..G.=....r.9=%.....u....>.. |
2400 | 9d 3d 3d 83 2c bf 90 c2 75 3d 93 1e 05 bf 86 c1 c2 3d 1b 95 8d 3e ea cd 74 bf 80 8e c3 3e e8 e0 | .==.,...u=.......=...>..t....>.. |
2420 | 9d 3d ba 82 32 bf 90 c2 75 3d cc 1c 03 bf 54 21 2a bf 3e f9 9e 3e 5c fb 2d bf 99 6c f7 3e 20 5f | .=..2...u=....T!*.>..>\.-..l.>._ |
2440 | dd 3c 3d 83 2c bf 90 c2 75 3d 93 1e 05 bf 86 c1 c2 3d 1b 95 8d 3e ea cd 74 bf fa 81 ef 3e 20 5f | .<=.,...u=.......=...>..t....>._ |
2460 | dd 3c 3d 83 2c bf b0 47 e1 3d 93 1e 05 bf 72 01 39 3d 25 89 92 be ea 03 75 bf fb 81 ef 3e 00 db | .<=.,..G.=....r.9=%.....u....>.. |
2480 | 6e 3d ba 82 32 bf b0 47 e1 3d cc 1c 03 bf 3e fb 1e bf 46 dd a2 be 6f 5f 37 bf 9a 6c f7 3e f0 da | n=..2..G.=....>...F...o_7..l.>.. |
24a0 | 6e 3d c2 c9 1f bf b0 47 e1 3d 08 d3 a9 be 6d a3 36 bf 4a e3 24 bf 1a 41 8d 3e 70 ad 09 3f 00 7d | n=.....G.=....m.6.J.$..A.>p..?.} |
24c0 | 2a 3e ba 82 32 bf b0 47 e1 3d cc 1c 03 bf 3e fb 1e bf 46 dd a2 be 6f 5f 37 bf 6e ad 09 3f c8 e0 | *>..2..G.=....>...F...o_7.n..?.. |
24e0 | 9d 3d 16 02 3a bf 20 85 eb 3d 98 9a 00 bf 90 25 48 bf 0d 87 06 bf 58 c5 ab be 4c aa 04 3f e0 e0 | .=..:....=.....%H.....X...L..?.. |
2500 | 9d 3d ec 2f 27 bf 20 85 eb 3d 1c 2e a5 be 68 31 34 bf 50 db 27 bf 18 d5 8b 3e 50 aa 04 3f 08 7d | .=./'....=....h14.P.'....>P..?.} |
2520 | 2a 3e 1a b2 f6 be a8 47 e1 3d 0c 6e b2 3e 85 bb 42 3f 4c f9 25 bf 02 41 01 bd f2 93 d3 3e 06 0f | *>.....G.=.n.>..B?L.%..A.....>.. |
2540 | 1d 3f 67 3c f3 be a8 47 e1 3d fc a0 02 3f 7e 09 bf 3e 3b 8d 9d be c0 0f 60 3f f4 93 d3 3e 2d f2 | .?g<...G.=...?~..>;.....`?...>-. |
2560 | 33 3f be 65 e3 be 18 85 eb 3d 89 7d 02 3f 44 21 22 3f 0d 63 06 bf 23 8f 11 3f 3a 9a dd 3e 2c f2 | 3?.e.....=.}.?D!"?.c..#..?:..>,. |
2580 | 33 3f 26 d4 e6 be 18 85 eb 3d c0 c4 b1 3e 85 99 42 3f 4c 1f 26 bf 04 e1 01 bd 35 9a dd 3e 05 0f | 3?&......=...>..B?L.&.....5..>.
void clear_particles ()
{
for(std::map<u32, ParticleSpawner*>::iterator i =
all_particlespawners.begin();
i != all_particlespawners.end();)
{
delete i->second;
all_particlespawners.erase(i++);
}
for(std::vector<Particle*>::iterator i =
all_particles.begin();
i != all_particles.end();)
{
(*i)->remove();
delete *i;
i = all_particles.erase(i);
}
}
|