| Blockland Forums > Modification Help |
| Help for BL RTS: Directional fireRelay code |
| << < (2/2) |
| onesis:
This is what I modified it to, but now it doesn't even work. I don't know this scripting language at all I'm just guessing based on what I know about c++. --- Code: ---function fxDtsBrick::VCE_relayCallFunction(%brick,%direction,%name,%args,%client) { %start = posFromTransform(%brick.getTransform()); %db = %brick.getDatablock(); %angle = %brick.getAngleID(); if(%angle == 1 || %angle == 3) { %addX = %db.brickSizeY * 0.55; %addY = %db.brickSizeX * 0.55; } else { %addX = %db.brickSizeX * 0.55; %addY = %db.brickSizeY * 0.55; } %addZ = %db.brickSizeZ * 0.22; //Up Down North East South West switch(%direction) { case 0: %add = 0 SPC 0 SPC %addZ; case 1: %add = 0 SPC 0 SPC -%addZ; case 2: %add = 0 SPC %addY SPC 0; case 3: %add = %addX SPC 0 SPC 0; case 4: %add = 0 SPC -%addY SPC 0; case 5: %add = -%addX SPC 0 SPC 0; } %end = vectorAdd(%start,%add); //Up Down North East South West switch(%direction) { case 0: %box = (%addX-0.1) SPC (%addY-0.1) SPC (0.1); case 1: %box = (%addX-0.1) SPC (%addY-0.1) SPC (0.1); case 2: %box = (%addX-0.1) SPC (0.1) SPC (%addZ-0.1); case 3: %box = (0.1) SPC (%addY-0.1) SPC (%addZ-0.1); case 4: %box = (%addX-0.1) SPC (0.1) SPC (%addZ-0.1); case 5: %box = (0.1) SPC (%addY-0.1) SPC (%addZ-0.1); } %ray = InitContainerBoxSearch(%end,%box,$TypeMasks::FxBrickAlwaysObjectType); %col = firstWord(%ray); if(isObject(%col)) { if(getTrustLevel(%col,%brick) < 2) return; %col.VCE_callFunction(%name,%args,%client); } } --- End code --- |
| onesis:
and in the bottom switch i tried db.bricksize first, and without all the 0.1's |
| Navigation |
| Message Index |
| Previous page |