I am currently working on a mod, where one of my units, is equipped with two weapons; A machine gun, and a flamethrower. The first weapon was no problem at all to do, although the flamethrower is really difficult. I want it so that the unit attacks only things that get too close to it, albeit melee units, buildings, or just units that get too close. I believe this was done in Antithesis Rising. I honestly have no idea where to begin, I studied the Iscript used in AR, and only got a little information.
And also, my unit is using the Marine Iscript.
None.
Put the flamethrower as an air weapon but set it as being able to target ground. Then, use the trgtrangecondjmp opcode.
eg.
MarineGndAttkInit:
trgtrangecondjmp 3 FLAMEFUCKINGTHROWER
wait 1
attackwith 1
gotorepeatattk
goto MarineGndAttkToIdle
FLAMEFUCKINGTHROWER:
wait 1
attackwith 2
gotorepeatattk
goto MarineGndAttkToIdle
Post has been edited 1 time(s), last time on Jun 5 2009, 10:37 pm by TassadarZeratul. Reason: fix'd
None.
Quote from name:TassadarZeratul
Put the flamethrower as an air weapon but set it as being able to target ground. Then, use the trgtrangecondjmp opcode.
eg.
MarineGndAttkInit:
trgtrangecondjmp FLAMEFUCKINGTHROWER
wait 1
attackwith 1
gotorepeatattk
goto MarineGndAttkToIdle
FLAMEFUCKINGTHROWER:
wait 1
attackwith 2
gotorepeatattk
goto MarineGndAttkToIdle
You missed a key thing here, TZ.
There are
two arguments for the
trgtrangecondjmp opcode.
Distance in pixels and the
name of the block of code.
The distance argument tells the unit at what distance it should jump to the block of code the opcode is pointing to.The block of code is self-explanatory.The example script should be changed to:
Collapse Box
MarineGndAttkInit:
trgtrangecondjmp 42 devilesk
wait 1
attackwith 1
gotorepeatattk
goto MarineGndAttkToIdle
devilesk:
wait 1
attackwith 2
gotorepeatattk
goto MarineGndAttkToIdle
Addendum: As an alternative, you can use the
useweapon opcode instead of using up your unit's air weapon slot.
Also, use codeboxes and collapse boxes when posting iscript. You should be able to locate the BBCode in the special scrollbox that's at the top-right of the posting opstions.
SEN, say hello to the one of the most newbie-friendly posts in the Modding Assistance forums. With all the colour and shit.
Post has been edited 6 time(s), last time on Jun 5 2009, 10:01 pm by FlyingHat.
None.
STF mod creator, Modcrafters.com admin, CampaignCreations.org staff
TZ had the block name (FLAMEFUCKINGTHROWER). All he was missing was the distance.
Distance in IceCC works by pixels. So in FlyingHat's above example, the distance that the flamethrower will be used is 42 pixels. In terms of weapon range, 16 pixels = 1 range. So 42 pixels would be under 3 range units (48 pixels).
Addendum: As an alternative, you can use the useweapon opcode instead of using up your unit's air weapon slot.
The problem with this is that useweapon spawns the weapon on the target unit. So if you wanted the attack to fly to the target, you'd have to do the air slot trick.
Also, use codeboxes and collapse boxes when posting iscript. You should be able to locate the BBCode in the special scrollbox that's at the top-right of the posting opstions.
Will do in the future.
None.
EDIT: Oh wait, my mistake. For some reason the 'attackwith 1' command was taken out
Post has been edited 1 time(s), last time on Jun 5 2009, 11:40 pm by Pandut.
None.