This commit is contained in:
Bruno Rybársky 2022-07-11 10:30:14 +02:00
parent dec116cc5e
commit bad55d19a0
19 changed files with 752 additions and 61 deletions

@ -1,2 +1,3 @@
name = portalgun name = portalgun
description = Portals and stuff description = Portals and stuff
optional_depends = mesecons

BIN
models/bullet.blend Normal file

Binary file not shown.

BIN
models/bullet.blend1 Normal file

Binary file not shown.

628
models/bullet.obj Normal file

@ -0,0 +1,628 @@
# Blender v3.1.2 OBJ File: 'bullet.blend'
# www.blender.org
mtllib bullet.mtl
o Cylinder
v -0.000000 -0.285469 -0.048214
v 0.009406 -0.285469 -0.047288
v 0.018451 -0.285469 -0.044544
v 0.026786 -0.285469 -0.040089
v 0.034093 -0.285469 -0.034093
v 0.040089 -0.285469 -0.026786
v 0.044544 -0.285469 -0.018451
v 0.047288 -0.285469 -0.009406
v 0.048214 -0.285469 0.000000
v 0.047288 -0.285469 0.009406
v 0.044544 -0.285469 0.018451
v 0.040089 -0.285469 0.026786
v 0.034093 -0.285469 0.034093
v 0.026786 -0.285469 0.040089
v 0.018451 -0.285469 0.044544
v 0.009406 -0.285469 0.047288
v -0.000000 -0.285469 0.048214
v -0.009406 -0.285469 0.047288
v -0.018451 -0.285469 0.044544
v -0.026786 -0.285469 0.040089
v -0.034093 -0.285469 0.034093
v -0.040089 -0.285469 0.026786
v -0.044544 -0.285469 0.018451
v -0.047288 -0.285469 0.009406
v -0.048214 -0.285469 -0.000000
v -0.047288 -0.285469 -0.009406
v -0.044544 -0.285469 -0.018451
v -0.040089 -0.285469 -0.026786
v -0.034093 -0.285469 -0.034093
v -0.026786 -0.285469 -0.040089
v -0.018451 -0.285469 -0.044544
v -0.009406 -0.285469 -0.047288
v 0.000000 0.202230 0.000000
v -0.000000 0.083239 -0.048214
v 0.009406 0.083239 -0.047288
v 0.018451 0.083239 -0.044544
v 0.026786 0.083239 -0.040089
v 0.034093 0.083239 -0.034093
v 0.040089 0.083239 -0.026786
v 0.044544 0.083239 -0.018451
v 0.047288 0.083239 -0.009406
v 0.048214 0.083239 0.000000
v 0.047288 0.083239 0.009406
v 0.044544 0.083239 0.018451
v 0.040089 0.083239 0.026786
v 0.034093 0.083239 0.034093
v 0.026786 0.083239 0.040089
v 0.018451 0.083239 0.044544
v 0.009406 0.083239 0.047288
v -0.000000 0.083239 0.048214
v -0.009406 0.083239 0.047288
v -0.018451 0.083239 0.044544
v -0.026786 0.083239 0.040089
v -0.034093 0.083239 0.034093
v -0.040089 0.083239 0.026786
v -0.044544 0.083239 0.018451
v -0.047288 0.083239 0.009406
v -0.048214 0.083239 -0.000000
v -0.047288 0.083239 -0.009406
v -0.044544 0.083239 -0.018451
v -0.040089 0.083239 -0.026786
v -0.034093 0.083239 -0.034093
v -0.026786 0.083239 -0.040089
v -0.018451 0.083239 -0.044544
v -0.009406 0.083239 -0.047288
v -0.000000 -0.285469 -0.048214
v 0.009406 -0.285469 -0.047288
v 0.018451 -0.285469 -0.044544
v 0.026786 -0.285469 -0.040089
v 0.034093 -0.285469 -0.034093
v 0.040089 -0.285469 -0.026786
v 0.044544 -0.285469 -0.018451
v 0.047288 -0.285469 -0.009406
v 0.048214 -0.285469 0.000000
v 0.047288 -0.285469 0.009406
v 0.044544 -0.285469 0.018451
v 0.040089 -0.285469 0.026786
v 0.034093 -0.285469 0.034093
v 0.026786 -0.285469 0.040089
v 0.018451 -0.285469 0.044544
v 0.009406 -0.285469 0.047288
v -0.000000 -0.285469 0.048214
v -0.009406 -0.285469 0.047288
v -0.018451 -0.285469 0.044544
v -0.026786 -0.285469 0.040089
v -0.034093 -0.285469 0.034093
v -0.040089 -0.285469 0.026786
v -0.044544 -0.285469 0.018451
v -0.047288 -0.285469 0.009406
v -0.048214 -0.285469 -0.000000
v -0.047288 -0.285469 -0.009406
v -0.044544 -0.285469 -0.018451
v -0.040089 -0.285469 -0.026786
v -0.034093 -0.285469 -0.034093
v -0.026786 -0.285469 -0.040089
v -0.018451 -0.285469 -0.044544
v -0.009406 -0.285469 -0.047288
v 0.000000 0.202230 0.000000
v -0.000000 0.083239 -0.048214
v 0.009406 0.083239 -0.047288
v 0.018451 0.083239 -0.044544
v 0.026786 0.083239 -0.040089
v 0.034093 0.083239 -0.034093
v 0.040089 0.083239 -0.026786
v 0.044544 0.083239 -0.018451
v 0.047288 0.083239 -0.009406
v 0.048214 0.083239 0.000000
v 0.047288 0.083239 0.009406
v 0.044544 0.083239 0.018451
v 0.040089 0.083239 0.026786
v 0.034093 0.083239 0.034093
v 0.026786 0.083239 0.040089
v 0.018451 0.083239 0.044544
v 0.009406 0.083239 0.047288
v -0.000000 0.083239 0.048214
v -0.009406 0.083239 0.047288
v -0.018451 0.083239 0.044544
v -0.026786 0.083239 0.040089
v -0.034093 0.083239 0.034093
v -0.040089 0.083239 0.026786
v -0.044544 0.083239 0.018451
v -0.047288 0.083239 0.009406
v -0.048214 0.083239 -0.000000
v -0.047288 0.083239 -0.009406
v -0.044544 0.083239 -0.018451
v -0.040089 0.083239 -0.026786
v -0.034093 0.083239 -0.034093
v -0.026786 0.083239 -0.040089
v -0.018451 0.083239 -0.044544
v -0.009406 0.083239 -0.047288
vt 0.750000 0.490000
vt 0.796822 0.485388
vt 0.841844 0.471731
vt 0.883337 0.449553
vt 0.919706 0.419706
vt 0.949553 0.383337
vt 0.971731 0.341844
vt 0.985388 0.296822
vt 0.990000 0.250000
vt 0.985388 0.203178
vt 0.971731 0.158156
vt 0.949553 0.116663
vt 0.919706 0.080294
vt 0.883337 0.050447
vt 0.841844 0.028269
vt 0.796822 0.014612
vt 0.750000 0.010000
vt 0.703178 0.014612
vt 0.658156 0.028269
vt 0.616663 0.050447
vt 0.580294 0.080294
vt 0.550447 0.116663
vt 0.528269 0.158156
vt 0.514612 0.203178
vt 0.510000 0.250000
vt 0.514612 0.296822
vt 0.528269 0.341844
vt 0.550447 0.383337
vt 0.580294 0.419706
vt 0.616663 0.449553
vt 0.658156 0.471731
vt 0.703178 0.485388
vt 0.031250 0.500000
vt 0.031250 0.892746
vt 0.000000 0.892746
vt 0.000000 0.500000
vt 0.062500 0.500000
vt 0.062500 0.892746
vt 0.093750 0.500000
vt 0.093750 0.892746
vt 0.125000 0.500000
vt 0.125000 0.892746
vt 0.156250 0.500000
vt 0.156250 0.892746
vt 0.187500 0.500000
vt 0.187500 0.892746
vt 0.218750 0.500000
vt 0.218750 0.892746
vt 0.250000 0.500000
vt 0.250000 0.892746
vt 0.281250 0.500000
vt 0.281250 0.892746
vt 0.312500 0.500000
vt 0.312500 0.892746
vt 0.343750 0.500000
vt 0.343750 0.892746
vt 0.375000 0.500000
vt 0.375000 0.892746
vt 0.406250 0.500000
vt 0.406250 0.892746
vt 0.437500 0.500000
vt 0.437500 0.892746
vt 0.468750 0.500000
vt 0.468750 0.892746
vt 0.500000 0.500000
vt 0.500000 0.892746
vt 0.531250 0.500000
vt 0.531250 0.892746
vt 0.562500 0.500000
vt 0.562500 0.892746
vt 0.593750 0.500000
vt 0.593750 0.892746
vt 0.625000 0.500000
vt 0.625000 0.892746
vt 0.656250 0.500000
vt 0.656250 0.892746
vt 0.687500 0.500000
vt 0.687500 0.892746
vt 0.718750 0.500000
vt 0.718750 0.892746
vt 0.750000 0.500000
vt 0.750000 0.892746
vt 0.781250 0.500000
vt 0.781250 0.892746
vt 0.812500 0.500000
vt 0.812500 0.892746
vt 0.843750 0.500000
vt 0.843750 0.892746
vt 0.875000 0.500000
vt 0.875000 0.892746
vt 0.906250 0.500000
vt 0.906250 0.892746
vt 0.937500 0.500000
vt 0.937500 0.892746
vt 0.968750 0.500000
vt 0.968750 0.892746
vt 1.000000 0.500000
vt 1.000000 0.892746
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.750000 0.490000
vt 0.703178 0.485388
vt 0.658156 0.471731
vt 0.616663 0.449553
vt 0.580294 0.419706
vt 0.550447 0.383337
vt 0.528269 0.341844
vt 0.514612 0.296822
vt 0.510000 0.250000
vt 0.514612 0.203178
vt 0.528269 0.158156
vt 0.550447 0.116663
vt 0.580294 0.080294
vt 0.616663 0.050447
vt 0.658156 0.028269
vt 0.703178 0.014612
vt 0.750000 0.010000
vt 0.796822 0.014612
vt 0.841844 0.028269
vt 0.883337 0.050447
vt 0.919706 0.080294
vt 0.949553 0.116663
vt 0.971731 0.158156
vt 0.985388 0.203178
vt 0.990000 0.250000
vt 0.985388 0.296822
vt 0.971731 0.341844
vt 0.949553 0.383337
vt 0.919706 0.419706
vt 0.883337 0.449553
vt 0.841844 0.471731
vt 0.796822 0.485388
vt 0.031250 0.500000
vt 0.000000 0.500000
vt 0.000000 0.892746
vt 0.031250 0.892746
vt 0.062500 0.500000
vt 0.062500 0.892746
vt 0.093750 0.500000
vt 0.093750 0.892746
vt 0.125000 0.500000
vt 0.125000 0.892746
vt 0.156250 0.500000
vt 0.156250 0.892746
vt 0.187500 0.500000
vt 0.187500 0.892746
vt 0.218750 0.500000
vt 0.218750 0.892746
vt 0.250000 0.500000
vt 0.250000 0.892746
vt 0.281250 0.500000
vt 0.281250 0.892746
vt 0.312500 0.500000
vt 0.312500 0.892746
vt 0.343750 0.500000
vt 0.343750 0.892746
vt 0.375000 0.500000
vt 0.375000 0.892746
vt 0.406250 0.500000
vt 0.406250 0.892746
vt 0.437500 0.500000
vt 0.437500 0.892746
vt 0.468750 0.500000
vt 0.468750 0.892746
vt 0.500000 0.500000
vt 0.500000 0.892746
vt 0.531250 0.500000
vt 0.531250 0.892746
vt 0.562500 0.500000
vt 0.562500 0.892746
vt 0.593750 0.500000
vt 0.593750 0.892746
vt 0.625000 0.500000
vt 0.625000 0.892746
vt 0.656250 0.500000
vt 0.656250 0.892746
vt 0.687500 0.500000
vt 0.687500 0.892746
vt 0.718750 0.500000
vt 0.718750 0.892746
vt 0.750000 0.500000
vt 0.750000 0.892746
vt 0.781250 0.500000
vt 0.781250 0.892746
vt 0.812500 0.500000
vt 0.812500 0.892746
vt 0.843750 0.500000
vt 0.843750 0.892746
vt 0.875000 0.500000
vt 0.875000 0.892746
vt 0.906250 0.500000
vt 0.906250 0.892746
vt 0.937500 0.500000
vt 0.937500 0.892746
vt 0.968750 0.500000
vt 0.968750 0.892746
vt 1.000000 0.500000
vt 1.000000 0.892746
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vt 0.000000 0.000000
vn 0.0000 -1.0000 -0.0000
vn -0.0980 0.0000 -0.9952
vn -0.2903 0.0000 -0.9569
vn -0.4714 0.0000 -0.8819
vn -0.6344 0.0000 -0.7730
vn -0.7730 0.0000 -0.6344
vn -0.8819 0.0000 -0.4714
vn -0.9569 0.0000 -0.2903
vn -0.9952 0.0000 -0.0980
vn -0.9952 0.0000 0.0980
vn -0.9569 0.0000 0.2903
vn -0.8819 0.0000 0.4714
vn -0.7730 0.0000 0.6344
vn -0.6344 0.0000 0.7730
vn -0.4714 0.0000 0.8819
vn -0.2903 0.0000 0.9569
vn -0.0980 0.0000 0.9952
vn 0.0980 0.0000 0.9952
vn 0.2903 0.0000 0.9569
vn 0.4714 0.0000 0.8819
vn 0.6344 0.0000 0.7730
vn 0.7730 0.0000 0.6344
vn 0.8819 0.0000 0.4714
vn 0.9569 0.0000 0.2903
vn 0.9952 0.0000 0.0980
vn 0.9952 0.0000 -0.0980
vn 0.9569 0.0000 -0.2903
vn 0.8819 0.0000 -0.4714
vn 0.7730 0.0000 -0.6344
vn 0.6344 0.0000 -0.7730
vn 0.4714 0.0000 -0.8819
vn 0.2903 0.0000 -0.9569
vn 0.0980 0.0000 -0.9952
vn -0.0909 0.3740 -0.9230
vn -0.2692 0.3740 -0.8875
vn -0.4372 0.3740 -0.8179
vn -0.5884 0.3740 -0.7169
vn -0.7169 0.3740 -0.5884
vn -0.8179 0.3740 -0.4372
vn -0.8875 0.3740 -0.2692
vn -0.9230 0.3740 -0.0909
vn -0.9230 0.3740 0.0909
vn -0.8875 0.3740 0.2692
vn -0.8179 0.3740 0.4372
vn -0.7169 0.3740 0.5884
vn -0.5884 0.3740 0.7169
vn -0.4372 0.3740 0.8179
vn -0.2692 0.3740 0.8875
vn -0.0909 0.3740 0.9230
vn 0.0909 0.3740 0.9230
vn 0.2692 0.3740 0.8875
vn 0.4372 0.3740 0.8179
vn 0.5884 0.3740 0.7169
vn 0.7169 0.3740 0.5884
vn 0.8179 0.3740 0.4372
vn 0.8875 0.3740 0.2692
vn 0.9230 0.3740 0.0909
vn 0.9230 0.3740 -0.0909
vn 0.8875 0.3740 -0.2692
vn 0.8179 0.3740 -0.4372
vn 0.7169 0.3740 -0.5884
vn 0.5884 0.3740 -0.7169
vn 0.4372 0.3740 -0.8179
vn 0.2692 0.3740 -0.8875
vn 0.0909 0.3740 -0.9230
vn 0.0000 1.0000 -0.0000
vn 0.0909 -0.3740 0.9230
vn 0.2692 -0.3740 0.8875
vn 0.4372 -0.3740 0.8179
vn 0.5884 -0.3740 0.7169
vn 0.7169 -0.3740 0.5884
vn 0.8179 -0.3740 0.4372
vn 0.8875 -0.3740 0.2692
vn 0.9230 -0.3740 0.0909
vn 0.9230 -0.3740 -0.0909
vn 0.8875 -0.3740 -0.2692
vn 0.8179 -0.3740 -0.4372
vn 0.7169 -0.3740 -0.5884
vn 0.5884 -0.3740 -0.7169
vn 0.4372 -0.3740 -0.8179
vn 0.2692 -0.3740 -0.8875
vn 0.0909 -0.3740 -0.9230
vn -0.0909 -0.3740 -0.9230
vn -0.2692 -0.3740 -0.8875
vn -0.4372 -0.3740 -0.8179
vn -0.5884 -0.3740 -0.7169
vn -0.7169 -0.3740 -0.5884
vn -0.8179 -0.3740 -0.4372
vn -0.8875 -0.3740 -0.2692
vn -0.9230 -0.3740 -0.0909
vn -0.9230 -0.3740 0.0909
vn -0.8875 -0.3740 0.2692
vn -0.8179 -0.3740 0.4372
vn -0.7169 -0.3740 0.5884
vn -0.5884 -0.3740 0.7169
vn -0.4372 -0.3740 0.8179
vn -0.2692 -0.3740 0.8875
vn -0.0909 -0.3740 0.9230
usemtl None
s off
f 1/1/1 2/2/1 3/3/1 4/4/1 5/5/1 6/6/1 7/7/1 8/8/1 9/9/1 10/10/1 11/11/1 12/12/1 13/13/1 14/14/1 15/15/1 16/16/1 17/17/1 18/18/1 19/19/1 20/20/1 21/21/1 22/22/1 23/23/1 24/24/1 25/25/1 26/26/1 27/27/1 28/28/1 29/29/1 30/30/1 31/31/1 32/32/1
f 32/33/2 65/34/2 34/35/2 1/36/2
f 31/37/3 64/38/3 65/34/3 32/33/3
f 30/39/4 63/40/4 64/38/4 31/37/4
f 29/41/5 62/42/5 63/40/5 30/39/5
f 28/43/6 61/44/6 62/42/6 29/41/6
f 27/45/7 60/46/7 61/44/7 28/43/7
f 26/47/8 59/48/8 60/46/8 27/45/8
f 25/49/9 58/50/9 59/48/9 26/47/9
f 24/51/10 57/52/10 58/50/10 25/49/10
f 23/53/11 56/54/11 57/52/11 24/51/11
f 22/55/12 55/56/12 56/54/12 23/53/12
f 21/57/13 54/58/13 55/56/13 22/55/13
f 20/59/14 53/60/14 54/58/14 21/57/14
f 19/61/15 52/62/15 53/60/15 20/59/15
f 18/63/16 51/64/16 52/62/16 19/61/16
f 17/65/17 50/66/17 51/64/17 18/63/17
f 16/67/18 49/68/18 50/66/18 17/65/18
f 15/69/19 48/70/19 49/68/19 16/67/19
f 14/71/20 47/72/20 48/70/20 15/69/20
f 13/73/21 46/74/21 47/72/21 14/71/21
f 12/75/22 45/76/22 46/74/22 13/73/22
f 11/77/23 44/78/23 45/76/23 12/75/23
f 10/79/24 43/80/24 44/78/24 11/77/24
f 9/81/25 42/82/25 43/80/25 10/79/25
f 8/83/26 41/84/26 42/82/26 9/81/26
f 7/85/27 40/86/27 41/84/27 8/83/27
f 6/87/28 39/88/28 40/86/28 7/85/28
f 5/89/29 38/90/29 39/88/29 6/87/29
f 4/91/30 37/92/30 38/90/30 5/89/30
f 3/93/31 36/94/31 37/92/31 4/91/31
f 2/95/32 35/96/32 36/94/32 3/93/32
f 1/97/33 34/98/33 35/96/33 2/95/33
f 65/34/34 33/99/34 34/35/34
f 65/34/35 64/38/35 33/99/35
f 64/38/36 63/40/36 33/99/36
f 63/40/37 62/42/37 33/99/37
f 62/42/38 61/44/38 33/99/38
f 61/44/39 60/46/39 33/99/39
f 60/46/40 59/48/40 33/99/40
f 59/48/41 58/50/41 33/99/41
f 58/50/42 57/52/42 33/99/42
f 57/52/43 56/54/43 33/99/43
f 56/54/44 55/56/44 33/99/44
f 55/56/45 54/58/45 33/99/45
f 54/58/46 53/60/46 33/99/46
f 53/60/47 52/62/47 33/99/47
f 52/62/48 51/64/48 33/99/48
f 51/64/49 50/66/49 33/99/49
f 50/66/50 49/68/50 33/99/50
f 49/68/51 48/70/51 33/99/51
f 48/70/52 47/72/52 33/99/52
f 47/72/53 46/74/53 33/99/53
f 46/74/54 45/76/54 33/99/54
f 45/76/55 44/78/55 33/99/55
f 44/78/56 43/80/56 33/99/56
f 43/80/57 42/82/57 33/99/57
f 42/82/58 41/84/58 33/99/58
f 41/84/59 40/86/59 33/99/59
f 40/86/60 39/88/60 33/99/60
f 39/88/61 38/90/61 33/99/61
f 38/90/62 37/92/62 33/99/62
f 37/92/63 36/94/63 33/99/63
f 36/94/64 35/96/64 33/99/64
f 35/96/65 34/98/65 33/99/65
f 64/100/1 65/101/1 34/102/1 35/103/1 36/104/1 37/105/1 38/106/1 39/107/1 40/108/1 41/109/1 42/110/1 43/111/1 44/112/1 45/113/1 46/114/1 47/115/1 48/116/1 49/117/1 50/118/1 51/119/1 52/120/1 53/121/1 54/122/1 55/123/1 56/124/1 57/125/1 58/126/1 59/127/1 60/128/1 61/129/1 62/130/1 63/131/1
f 66/132/66 97/133/66 96/134/66 95/135/66 94/136/66 93/137/66 92/138/66 91/139/66 90/140/66 89/141/66 88/142/66 87/143/66 86/144/66 85/145/66 84/146/66 83/147/66 82/148/66 81/149/66 80/150/66 79/151/66 78/152/66 77/153/66 76/154/66 75/155/66 74/156/66 73/157/66 72/158/66 71/159/66 70/160/66 69/161/66 68/162/66 67/163/66
f 97/164/18 66/165/18 99/166/18 130/167/18
f 96/168/19 97/164/19 130/167/19 129/169/19
f 95/170/20 96/168/20 129/169/20 128/171/20
f 94/172/21 95/170/21 128/171/21 127/173/21
f 93/174/22 94/172/22 127/173/22 126/175/22
f 92/176/23 93/174/23 126/175/23 125/177/23
f 91/178/24 92/176/24 125/177/24 124/179/24
f 90/180/25 91/178/25 124/179/25 123/181/25
f 89/182/26 90/180/26 123/181/26 122/183/26
f 88/184/27 89/182/27 122/183/27 121/185/27
f 87/186/28 88/184/28 121/185/28 120/187/28
f 86/188/29 87/186/29 120/187/29 119/189/29
f 85/190/30 86/188/30 119/189/30 118/191/30
f 84/192/31 85/190/31 118/191/31 117/193/31
f 83/194/32 84/192/32 117/193/32 116/195/32
f 82/196/33 83/194/33 116/195/33 115/197/33
f 81/198/2 82/196/2 115/197/2 114/199/2
f 80/200/3 81/198/3 114/199/3 113/201/3
f 79/202/4 80/200/4 113/201/4 112/203/4
f 78/204/5 79/202/5 112/203/5 111/205/5
f 77/206/6 78/204/6 111/205/6 110/207/6
f 76/208/7 77/206/7 110/207/7 109/209/7
f 75/210/8 76/208/8 109/209/8 108/211/8
f 74/212/9 75/210/9 108/211/9 107/213/9
f 73/214/10 74/212/10 107/213/10 106/215/10
f 72/216/11 73/214/11 106/215/11 105/217/11
f 71/218/12 72/216/12 105/217/12 104/219/12
f 70/220/13 71/218/13 104/219/13 103/221/13
f 69/222/14 70/220/14 103/221/14 102/223/14
f 68/224/15 69/222/15 102/223/15 101/225/15
f 67/226/16 68/224/16 101/225/16 100/227/16
f 66/228/17 67/226/17 100/227/17 99/229/17
f 130/167/67 99/166/67 98/230/67
f 130/167/68 98/230/68 129/169/68
f 129/169/69 98/230/69 128/171/69
f 128/171/70 98/230/70 127/173/70
f 127/173/71 98/230/71 126/175/71
f 126/175/72 98/230/72 125/177/72
f 125/177/73 98/230/73 124/179/73
f 124/179/74 98/230/74 123/181/74
f 123/181/75 98/230/75 122/183/75
f 122/183/76 98/230/76 121/185/76
f 121/185/77 98/230/77 120/187/77
f 120/187/78 98/230/78 119/189/78
f 119/189/79 98/230/79 118/191/79
f 118/191/80 98/230/80 117/193/80
f 117/193/81 98/230/81 116/195/81
f 116/195/82 98/230/82 115/197/82
f 115/197/83 98/230/83 114/199/83
f 114/199/84 98/230/84 113/201/84
f 113/201/85 98/230/85 112/203/85
f 112/203/86 98/230/86 111/205/86
f 111/205/87 98/230/87 110/207/87
f 110/207/88 98/230/88 109/209/88
f 109/209/89 98/230/89 108/211/89
f 108/211/90 98/230/90 107/213/90
f 107/213/91 98/230/91 106/215/91
f 106/215/92 98/230/92 105/217/92
f 105/217/93 98/230/93 104/219/93
f 104/219/94 98/230/94 103/221/94
f 103/221/95 98/230/95 102/223/95
f 102/223/96 98/230/96 101/225/96
f 101/225/97 98/230/97 100/227/97
f 100/227/98 98/230/98 99/229/98
f 129/231/66 128/232/66 127/233/66 126/234/66 125/235/66 124/236/66 123/237/66 122/238/66 121/239/66 120/240/66 119/241/66 118/242/66 117/243/66 116/244/66 115/245/66 114/246/66 113/247/66 112/248/66 111/249/66 110/250/66 109/251/66 108/252/66 107/253/66 106/254/66 105/255/66 104/256/66 103/257/66 102/258/66 101/259/66 100/260/66 99/261/66 130/262/66

@ -1,11 +1,22 @@
local pgad_rules={{x = 1, y = 0, z = 0},{x =-1, y = 0, z = 0},{x = 0, y = 1, z = 0},{x = 0, y =-1, z = 0},{x = 0, y = 0, z = 1},{x = 0, y = 0, z =-1}} local pgad_rules={{x = 1, y = 0, z = 0},{x =-1, y = 0, z = 0},{x = 0, y = 1, z = 0},{x = 0, y =-1, z = 0},{x = 0, y = 0, z = 1},{x = 0, y = 0, z =-1}}
stone_sounds = {}
stone_sounds.footstep = {name="stone_walk", gain=1.0}
stone_sounds.dug = {name="stone_break", gain=1.0}
stone_sounds.place = {name="block_place", gain=1.0}
glass_sounds = {}
glass_sounds.footstep = {name="glass_walk", gain=1.0}
glass_sounds.dug = {name="glass_break", gain=1.0}
glass_sounds.place = {name="block_place", gain=1.0}
wood_sounds = {}
wood_sounds.footstep = {name="wood_walk", gain=1.0}
wood_sounds.dug = {name="wood_break", gain=1.0}
wood_sounds.place = {name="block_place", gain=1.0}
minetest.register_node("portalgun:cplps1", { minetest.register_node("portalgun:cplps1", {
description = "Close player portal", description = "Close player portal",
tiles = {"portalgun_gray.png"}, tiles = {"portalgun_gray.png"},
groups = {mesecon=2,snappy = 3, not_in_creative_inventory=0}, groups = {mesecon=2,snappy = 3, not_in_creative_inventory=0},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
is_ground_content = false, is_ground_content = false,
mesecons = {effector = { mesecons = {effector = {
action_on = function (pos, node) action_on = function (pos, node)
@ -31,7 +42,7 @@ minetest.register_node("portalgun:cplps2", {
description = "Close player portal", description = "Close player portal",
tiles = {"portalgun_gray.png^[colorize:#ffe85977"}, tiles = {"portalgun_gray.png^[colorize:#ffe85977"},
groups = {mesecon=2,snappy = 3, not_in_creative_inventory=1}, groups = {mesecon=2,snappy = 3, not_in_creative_inventory=1},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
is_ground_content = false, is_ground_content = false,
paramtype = "light", paramtype = "light",
light_source = 4, light_source = 4,
@ -46,7 +57,7 @@ minetest.register_node("portalgun:sign_v", {
drop="portalgun:sign_x", drop="portalgun:sign_x",
drawtype = "nodebox", drawtype = "nodebox",
groups = {mesecon=2,snappy = 3, not_in_creative_inventory=1}, groups = {mesecon=2,snappy = 3, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -68,7 +79,7 @@ minetest.register_node("portalgun:sign_x", {
inventory_image = "portalgun_x.png", inventory_image = "portalgun_x.png",
drawtype = "nodebox", drawtype = "nodebox",
groups = {mesecon=2,snappy = 3, not_in_creative_inventory=0}, groups = {mesecon=2,snappy = 3, not_in_creative_inventory=0},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -96,7 +107,7 @@ minetest.register_node("portalgun:portaltarget_" .. portaltarget_sig[ii][1], {
tiles = {"portalgun_testblock.png^" .. portaltarget_sig[ii][2]}, tiles = {"portalgun_testblock.png^" .. portaltarget_sig[ii][2]},
groups = {mesecon = 2,cracky=2}, groups = {mesecon = 2,cracky=2},
mesecons = {receptor = {state = "off"}}, mesecons = {receptor = {state = "off"}},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -128,12 +139,12 @@ minetest.register_node("portalgun:button", {
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
selection_box = {type = "fixed",fixed = { -0.2, -0.5, -0.2, 0.2, 0.85, 0.2 }}, selection_box = {type = "fixed",fixed = { -0.2, -0.5, -0.2, 0.2, 0.85, 0.2 }},
sounds = default.node_sound_defaults(), sounds = stone_sounds,
mesecons = {receptor = {state = "off"}}, mesecons = {receptor = {state = "off"}},
on_rightclick = function(pos, node, clicker) on_rightclick = function(pos, node, clicker)
mesecon.receptor_on(pos) mesecon.receptor_on(pos)
minetest.get_node_timer(pos):start(2) minetest.get_node_timer(pos):start(2)
minetest.sound_play("default_dig_dig_immediate", {pos=pos,max_hear_distance = 10, gain = 1}) minetest.sound_play("button_press", {pos=pos,max_hear_distance = 10, gain = 1})
end, end,
on_timer = function (pos, elapsed) on_timer = function (pos, elapsed)
mesecon.receptor_off(pos) mesecon.receptor_off(pos)
@ -158,7 +169,7 @@ minetest.register_node("portalgun:dmgblock_1", {
paramtype="light", paramtype="light",
alpha = 50, alpha = 50,
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
walkable=false, walkable=false,
damage_per_second = 5, damage_per_second = 5,
mesecons = {conductor = { mesecons = {conductor = {
@ -218,7 +229,7 @@ minetest.register_node("portalgun:autocheckpoint", {
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
light_source = 5, light_source = 5,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type="fixed", type="fixed",
@ -256,7 +267,7 @@ minetest.register_node("portalgun:powerdoor1_1", {
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
alpha = 160, alpha = 160,
node_box = { node_box = {
@ -311,7 +322,7 @@ minetest.register_node("portalgun:powerdoor1_2", {
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
alpha = 160, alpha = 160,
node_box = { node_box = {
@ -387,7 +398,7 @@ minetest.register_node("portalgun:delayer", {
description = "Delayer (Punsh to change time)", description = "Delayer (Punsh to change time)",
tiles = {"portalgun_delayer.png","portalgun_testblock.png"}, tiles = {"portalgun_delayer.png","portalgun_testblock.png"},
groups = {dig_immediate = 2,mesecon=1}, groups = {dig_immediate = 2,mesecon=1},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
drawtype="nodebox", drawtype="nodebox",
@ -442,7 +453,7 @@ minetest.register_node("portalgun:testblocks", {
description = "Trapblock", description = "Trapblock",
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {cracky = 1,mesecon=2}, groups = {cracky = 1,mesecon=2},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
mesecons = {conductor = { mesecons = {conductor = {
state = mesecon.state.off, state = mesecon.state.off,
onstate = "portalgun:testblocks2", onstate = "portalgun:testblocks2",
@ -478,7 +489,7 @@ minetest.register_node("portalgun:door_1", {
}, },
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=0}, groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=0},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -519,7 +530,7 @@ minetest.register_node("portalgun:door_2", {
}, },
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1}, groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -550,7 +561,7 @@ minetest.register_node("portalgun:door_open_1", {
}, },
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1}, groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
@ -580,7 +591,7 @@ minetest.register_node("portalgun:door_open_2", {
}, },
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1}, groups = {mesecon=1,cracky = 1, level = 2, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,

BIN
sounds/block_place.ogg Normal file

Binary file not shown.

BIN
sounds/button_press.ogg Normal file

Binary file not shown.

BIN
sounds/glass_break.ogg Normal file

Binary file not shown.

BIN
sounds/glass_walk.ogg Normal file

Binary file not shown.

BIN
sounds/stone_break.ogg Normal file

Binary file not shown.

BIN
sounds/stone_walk.ogg Normal file

Binary file not shown.

BIN
sounds/wood_break.ogg Normal file

Binary file not shown.

BIN
sounds/wood_walk.ogg Normal file

Binary file not shown.

@ -1,3 +1,15 @@
stone_sounds = {}
stone_sounds.footstep = {name="stone_walk", gain=1.0}
stone_sounds.dug = {name="stone_break", gain=1.0}
stone_sounds.place = {name="block_place", gain=1.0}
glass_sounds = {}
glass_sounds.footstep = {name="glass_walk", gain=1.0}
glass_sounds.dug = {name="glass_break", gain=1.0}
glass_sounds.place = {name="block_place", gain=1.0}
wood_sounds = {}
wood_sounds.footstep = {name="wood_walk", gain=1.0}
wood_sounds.dug = {name="wood_break", gain=1.0}
wood_sounds.place = {name="block_place", gain=1.0}
local snuma=1 local snuma=1
for ii = 0, 9, 1 do for ii = 0, 9, 1 do
if ii==1 then snuma=0 end if ii==1 then snuma=0 end
@ -7,7 +19,7 @@ minetest.register_node("portalgun:sign_numa".. ii, {
drop="portalgun:sign_numa1", drop="portalgun:sign_numa1",
drawtype = "nodebox", drawtype = "nodebox",
groups = {mesecon=2,portalnuma=1,dig_immediate = 3, not_in_creative_inventory=snuma}, groups = {mesecon=2,portalnuma=1,dig_immediate = 3, not_in_creative_inventory=snuma},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -51,7 +63,7 @@ minetest.register_node("portalgun:sign_numb".. ii, {
drop="portalgun:sign_numa1", drop="portalgun:sign_numa1",
drawtype = "nodebox", drawtype = "nodebox",
groups = {mesecon=2,portalnumb=1,dig_immediate = 3, not_in_creative_inventory=1}, groups = {mesecon=2,portalnumb=1,dig_immediate = 3, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -87,7 +99,7 @@ minetest.register_node("portalgun:turretgun2", {
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_defaults(), sounds = stone_sounds,
tiles = {"portalgun_sentry_turret.png"}, tiles = {"portalgun_sentry_turret.png"},
drawtype = "mesh", drawtype = "mesh",
mesh="torret2.obj", mesh="torret2.obj",
@ -152,7 +164,7 @@ minetest.register_node("portalgun:turretgun", {
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_defaults(), sounds = stone_sounds,
tiles = {"portalgun_sentry_turret.png"}, tiles = {"portalgun_sentry_turret.png"},
drawtype = "mesh", drawtype = "mesh",
mesh="torret1.obj", mesh="torret1.obj",
@ -207,6 +219,22 @@ minetest.register_node("portalgun:turretgun", {
end end
}) })
--giveitems register_chatcommand
minetest.register_chatcommand("giveitems", {
description = "Give items to player",
privs = {give=true},
func = function(name)
local player = minetest.get_player_by_name(name)
if player then
--give all items that dont have not_in_creative_inventory=1
for i,v in pairs(minetest.registered_items) do
if v.not_in_creative_inventory==nil or v.not_in_creative_inventory==0 then
player:get_inventory():add_item("main",i.." 1")
end
end
end
end,
})
minetest.register_node("portalgun:warntape", { minetest.register_node("portalgun:warntape", {
description = "Warntape", description = "Warntape",
@ -214,7 +242,7 @@ minetest.register_node("portalgun:warntape", {
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_defaults(), sounds = stone_sounds,
tiles = {"portalgun_warntape.png",}, tiles = {"portalgun_warntape.png",},
walkable = false, walkable = false,
drawtype = "nodebox", drawtype = "nodebox",
@ -249,7 +277,6 @@ minetest.register_node("portalgun:toxwater_1", {
liquid_range = 3, liquid_range = 3,
post_effect_color = {a = 200, r = 119, g = 70, b = 16}, post_effect_color = {a = 200, r = 119, g = 70, b = 16},
groups = {water = 3, liquid = 3}, groups = {water = 3, liquid = 3},
sounds = default.node_sound_water_defaults(),
}) })
minetest.register_node("portalgun:toxwater_2", { minetest.register_node("portalgun:toxwater_2", {
@ -275,8 +302,7 @@ minetest.register_node("portalgun:toxwater_2", {
liquid_renewable = false, liquid_renewable = false,
liquid_range = 3, liquid_range = 3,
post_effect_color = {a = 200, r = 119, g = 70, b = 16}, post_effect_color = {a = 200, r = 119, g = 70, b = 16},
groups = {water = 3, liquid = 3, not_in_creative_inventory = 1}, groups = {water = 3, liquid = 3, not_in_creative_inventory = 1}
sounds = default.node_sound_water_defaults(),
}) })
minetest.register_tool("portalgun:ed", { minetest.register_tool("portalgun:ed", {
@ -311,10 +337,10 @@ minetest.register_node("portalgun:cake", {
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
selection_box = {type = "fixed",fixed = { -0.3, -0.5, -0.3, 0.3, 0, 0.3 }}, selection_box = {type = "fixed",fixed = { -0.3, -0.5, -0.3, 0.3, 0, 0.3 }},
sounds = default.node_sound_defaults(), sounds = stone_sounds,
tiles = { tiles = {
"default_dirt.png^portalgun_cake1.png", "dirt.png^portalgun_cake1.png",
"default_dirt.png^portalgun_cake2.png", "dirt.png^portalgun_cake2.png",
}, },
drawtype = "nodebox", drawtype = "nodebox",
node_box = { node_box = {
@ -339,14 +365,14 @@ minetest.register_node("portalgun:testblock", {
description = "Test block", description = "Test block",
tiles = {"portalgun_testblock.png"}, tiles = {"portalgun_testblock.png"},
groups = {cracky = 1}, groups = {cracky = 1},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
}) })
minetest.register_node("portalgun:apb", { minetest.register_node("portalgun:apb", {
description = "Anti portal block", description = "Anti portal block",
tiles = {"portalgun_testblock.png^[colorize:#ffffffaa"}, tiles = {"portalgun_testblock.png^[colorize:#ffffffaa"},
groups = {cracky = 3,antiportal=1}, groups = {cracky = 3,antiportal=1},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
}) })
minetest.register_node("portalgun:apg", { minetest.register_node("portalgun:apg", {
@ -354,18 +380,18 @@ minetest.register_node("portalgun:apg", {
drawtype="glasslike", drawtype="glasslike",
paramtype="light", paramtype="light",
sunlight_propagates = true, sunlight_propagates = true,
tiles = {"default_glass.png^[colorize:#ffffffaa"}, tiles = {"glass.png^[colorize:#ffffffaa"},
groups = {cracky = 1,antiportal=1}, groups = {cracky = 1,antiportal=1},
sounds = default.node_sound_glass_defaults(), sounds = glass_sounds,
}) })
minetest.register_node("portalgun:hard_glass", { minetest.register_node("portalgun:hard_glass", {
description = "Hard glass", description = "Hard glass",
drawtype="glasslike", drawtype="glasslike",
paramtype="light", paramtype="light",
sunlight_propagates = true, sunlight_propagates = true,
tiles = {"default_glass.png^[colorize:#ddddddaa"}, tiles = {"glass.png^[colorize:#ddddddaa"},
groups = {cracky = 1}, groups = {cracky = 1},
sounds = default.node_sound_glass_defaults(), sounds = glass_sounds,
}) })
function portalgun_visiable(pos,ob) function portalgun_visiable(pos,ob)
@ -425,7 +451,7 @@ minetest.register_node("portalgun:secam_off", {
drawtype = "nodebox", drawtype = "nodebox",
walkable=false, walkable=false,
groups = {dig_immediate = 3}, groups = {dig_immediate = 3},
sounds = default.node_sound_glass_defaults(), sounds = glass_sounds,
is_ground_content = false, is_ground_content = false,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
@ -449,7 +475,7 @@ minetest.register_node("portalgun:secam", {
drawtype = "nodebox", drawtype = "nodebox",
walkable=false, walkable=false,
groups = {dig_immediate = 3,stone=1,not_in_creative_inventory=1}, groups = {dig_immediate = 3,stone=1,not_in_creative_inventory=1},
sounds = default.node_sound_glass_defaults(), sounds = glass_sounds,
is_ground_content = false, is_ground_content = false,
paramtype = "light", paramtype = "light",
paramtype2 = "facedir", paramtype2 = "facedir",
@ -482,14 +508,28 @@ on_timer=function(pos, elapsed)
end, end,
}) })
--register command for admins to build a testblock at the players position
minetest.register_chatcommand("testblock", {
params = "",
description = "builds a testblock at the players position",
privs = {server=true},
func = function(name, param)
local player = minetest.get_player_by_name(name)
local pos = player:get_pos()
minetest.set_node(pos, {name = "portalgun:testblock"})
end,
})
minetest.register_entity("portalgun:bullet1",{ minetest.register_entity("portalgun:bullet1",{
hp_max = 1, hp_max = 1,
--physical = true, --physical = true,
--collisionbox={-0.01,-0.01,-0.01,0.01,0.01,0.01}, --collisionbox={-0.01,-0.01,-0.01,0.01,0.01,0.01},
pointable=false, pointable=false,
visual = "sprite", visual = "mesh",
mesh = "bullet.obj",
--yellow color as tiles
tiles = {"#color[yellow]"},
visual_size = {x=0.1, y=0.1}, visual_size = {x=0.1, y=0.1},
textures = {"default_mese_block.png"},
initial_sprite_basepos = {x=0, y=0}, initial_sprite_basepos = {x=0, y=0},
portalgun=2, portalgun=2,
bullet=1, bullet=1,
@ -524,7 +564,7 @@ minetest.register_node("portalgun:sign1", {
inventory_image = "portalgun_testblock.png^portalgun_sign1.png", inventory_image = "portalgun_testblock.png^portalgun_sign1.png",
drawtype = "nodebox", drawtype = "nodebox",
groups = {snappy = 3, not_in_creative_inventory=0}, groups = {snappy = 3, not_in_creative_inventory=0},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",
@ -539,7 +579,7 @@ minetest.register_node("portalgun:sign2", {
inventory_image = "portalgun_testblock.png^portalgun_sign2.png", inventory_image = "portalgun_testblock.png^portalgun_sign2.png",
drawtype = "nodebox", drawtype = "nodebox",
groups = {snappy = 3, not_in_creative_inventory=0}, groups = {snappy = 3, not_in_creative_inventory=0},
sounds = default.node_sound_wood_defaults(), sounds = wood_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
paramtype = "light", paramtype = "light",

BIN
textures/cloud.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 B

BIN
textures/dirt.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 507 B

BIN
textures/glass.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 B

BIN
textures/steel.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 247 B

@ -1,4 +1,15 @@
stone_sounds = {}
stone_sounds.footstep = {name="stone_walk", gain=1.0}
stone_sounds.dug = {name="stone_break", gain=1.0}
stone_sounds.place = {name="block_place", gain=1.0}
glass_sounds = {}
glass_sounds.footstep = {name="glass_walk", gain=1.0}
glass_sounds.dug = {name="glass_break", gain=1.0}
glass_sounds.place = {name="block_place", gain=1.0}
wood_sounds = {}
wood_sounds.footstep = {name="wood_walk", gain=1.0}
wood_sounds.dug = {name="wood_break", gain=1.0}
wood_sounds.place = {name="block_place", gain=1.0}
local ptgwsc={ local ptgwsc={
{"weightedstoragecube.png","portalgun_presplat.png","(blue)"}, {"weightedstoragecube.png","portalgun_presplat.png","(blue)"},
{"weightedstoragecube2.png","portalgun_presplat2.png","(orange)"}, {"weightedstoragecube2.png","portalgun_presplat2.png","(orange)"},
@ -26,9 +37,9 @@ end,
minetest.register_node("portalgun:wscspawner2_" .. ii, { minetest.register_node("portalgun:wscspawner2_" .. ii, {
description = "Weighted storage cube spawner2 " ..ptgwsc[ii][3], description = "Weighted storage cube spawner2 " ..ptgwsc[ii][3],
tiles = {"default_steel_block.png","default_steel_block.png","default_steel_block.png","default_steel_block.png","default_steel_block.png",ptgwsc[ii][1]}, tiles = {"steel.png","steel.png","steel.png","steel.png","steel.png",ptgwsc[ii][1]},
groups = {cracky=2,mesecon_receptor_off = 1, mesecon_effector_off = 1}, groups = {cracky=2,mesecon_receptor_off = 1, mesecon_effector_off = 1},
sounds = default.node_sound_glass_defaults(), sounds = glass_sounds,
is_ground_content = false, is_ground_content = false,
paramtype2 = "facedir", paramtype2 = "facedir",
mesecons = {receptor = {state = "off"}, effector = { mesecons = {receptor = {state = "off"}, effector = {
@ -98,8 +109,8 @@ minetest.register_node("portalgun:wscspawner"..ii, {
paramtype = "light", paramtype = "light",
paramtype2="facedir", paramtype2="facedir",
sunlight_propagates = true, sunlight_propagates = true,
light_source = default.LIGHT_MAX - 1, light_source = 14,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -129,12 +140,12 @@ minetest.register_node("portalgun:wscspawner"..ii, {
minetest.register_node("portalgun:plantform1_" ..ii, { minetest.register_node("portalgun:plantform1_" ..ii, {
description = "Pressure platform " .. ptgwsc[ii][3], description = "Pressure platform " .. ptgwsc[ii][3],
tiles = {ptgwsc[ii][2],"default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png"}, tiles = {ptgwsc[ii][2],"cloud.png","cloud.png","cloud.png","cloud.png","cloud.png"},
groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=0}, groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=0},
mesecons = {receptor = {state = "off"}}, mesecons = {receptor = {state = "off"}},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -166,14 +177,14 @@ minetest.register_node("portalgun:plantform1_" ..ii, {
minetest.register_node("portalgun:plantform2_"..ii, { minetest.register_node("portalgun:plantform2_"..ii, {
description = "Pressure platform", description = "Pressure platform",
tiles = {ptgwsc[ii][2],"default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png"}, tiles = {ptgwsc[ii][2],"cloud.png","cloud.png","cloud.png","cloud.png","cloud.png"},
drop="portalgun:plantform1_"..ii, drop="portalgun:plantform1_"..ii,
groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=1}, groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=1},
mesecons = {receptor = {state = "on"}}, mesecons = {receptor = {state = "on"}},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
light_source = default.LIGHT_MAX - 1, light_source = 14,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -207,12 +218,12 @@ end -- of for #
minetest.register_node("portalgun:plantform_nu1", { minetest.register_node("portalgun:plantform_nu1", {
description = "Pressure platform (player or cube)", description = "Pressure platform (player or cube)",
tiles = {"portalgun_presplat5.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png"}, tiles = {"portalgun_presplat5.png","cloud.png","cloud.png","cloud.png","cloud.png","cloud.png"},
groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=0}, groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=0},
mesecons = {receptor = {state = "off"}}, mesecons = {receptor = {state = "off"}},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -244,14 +255,14 @@ minetest.register_node("portalgun:plantform_nu1", {
minetest.register_node("portalgun:plantform_nu2", { minetest.register_node("portalgun:plantform_nu2", {
description = "Pressure platform", description = "Pressure platform",
tiles = {"portalgun_presplat5.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png","default_cloud.png"}, tiles = {"portalgun_presplat5.png","cloud.png","cloud.png","cloud.png","cloud.png","cloud.png"},
drop="portalgun:plantform_nu1", drop="portalgun:plantform_nu1",
groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=1}, groups = {mesecon = 2,cracky = 1, not_in_creative_inventory=1},
mesecons = {receptor = {state = "on"}}, mesecons = {receptor = {state = "on"}},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
light_source = default.LIGHT_MAX - 1, light_source = 14,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -282,12 +293,12 @@ minetest.register_node("portalgun:plantform_nu2", {
minetest.register_node("portalgun:planthole", { minetest.register_node("portalgun:planthole", {
description = "Plathole (activate by any cube, 2 blocks under)", description = "Plathole (activate by any cube, 2 blocks under)",
tiles = {"default_cloud.png"}, tiles = {"cloud.png"},
groups = {mesecon = 2,cracky = 1}, groups = {mesecon = 2,cracky = 1},
mesecons = {receptor = {state = "off"}}, mesecons = {receptor = {state = "off"}},
paramtype = "light", paramtype = "light",
sunlight_propagates = true, sunlight_propagates = true,
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
drawtype="nodebox", drawtype="nodebox",
node_box = { node_box = {
type = "fixed", type = "fixed",
@ -324,7 +335,7 @@ minetest.register_node("portalgun:objdestroyer_1", {
description = "Object destroyer (destroys on active)", description = "Object destroyer (destroys on active)",
tiles = {"portalgun_testblock.png^[colorize:#FF0000aa"}, tiles = {"portalgun_testblock.png^[colorize:#FF0000aa"},
groups = {cracky = 2,mesecon=1}, groups = {cracky = 2,mesecon=1},
sounds = default.node_sound_stone_defaults(), sounds = stone_sounds,
mesecons = {effector = { mesecons = {effector = {
action_on = function (pos, node) action_on = function (pos, node)
minetest.set_node(pos, {name ="portalgun:objdestroyer_2"}) minetest.set_node(pos, {name ="portalgun:objdestroyer_2"})
@ -343,7 +354,7 @@ minetest.register_node("portalgun:objdestroyer_2", {
sunlight_propagates = true, sunlight_propagates = true,
drop="portalgun:objdestroyer_1", drop="portalgun:objdestroyer_1",
paramtype="light", paramtype="light",
light_source = default.LIGHT_MAX - 1, light_source = 14,
mesecons = {conductor = { mesecons = {conductor = {
state = mesecon.state.on, state = mesecon.state.on,
offstate = "portalgun:objdestroyer_1", offstate = "portalgun:objdestroyer_1",