diff options
| author | savask <savask@yandex.ru> | 2011-05-21 09:45:43 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2011-06-04 17:09:02 (GMT) |
| commit | a48e477fca5d53813892d6fcc454b4b7c4a91020 (patch) | |
| tree | e66eb05fe790ed009408f738b6907fde31e2fe3e /src/elements | |
| parent | 98115038c74e2a9650fd723e7ecbe4edec96aa3f (diff) | |
| download | powder-a48e477fca5d53813892d6fcc454b4b7c4a91020.zip powder-a48e477fca5d53813892d6fcc454b4b7c4a91020.tar.gz | |
Moved detach(i) function to powder.c, made soap display connections when
it's double-joined, made portal in detach soap before teleportating
(works strangely)
Diffstat (limited to 'src/elements')
| -rw-r--r-- | src/elements/prti.c | 4 | ||||
| -rw-r--r-- | src/elements/soap.c | 17 |
2 files changed, 4 insertions, 17 deletions
diff --git a/src/elements/prti.c b/src/elements/prti.c index 7205844..f7599bf 100644 --- a/src/elements/prti.c +++ b/src/elements/prti.c @@ -33,6 +33,10 @@ int update_PRTI(UPDATE_FUNC_ARGS) { if (!r || (r&0xFF)==PT_PRTI || (r&0xFF)==PT_PRTO || (ptypes[r&0xFF].falldown== 0 && ptypes[r&0xFF].state != ST_GAS && (r&0xFF)!=PT_SPRK)) continue; } + + if ((r&0xFF) == PT_SOAP) + detach(r>>8); + for ( nnx=0; nnx<80; nnx++) if (!portalp[parts[i].tmp][count-1][nnx].type) { diff --git a/src/elements/soap.c b/src/elements/soap.c index 0496bd2..ce8ff3d 100644 --- a/src/elements/soap.c +++ b/src/elements/soap.c @@ -1,22 +1,5 @@ #include <element.h> -void detach(int i) -{ - if ((parts[i].ctype&2) == 2) - { - if ((parts[parts[i].tmp].ctype&4) == 4) - parts[parts[i].tmp].ctype ^= 4; - } - - if ((parts[i].ctype&4) == 4) - { - if ((parts[parts[i].tmp2].ctype&2) == 2) - parts[parts[i].tmp2].ctype ^= 2; - } - - parts[i].ctype = 0; -} - int update_SOAP(UPDATE_FUNC_ARGS) { int r, rx, ry; |
