Jump to content

Search the Community

Showing results for tags 'Interrupt'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • BOHEMIA INTERACTIVE
    • BOHEMIA INTERACTIVE - NEWS
    • BOHEMIA INTERACTIVE - JOBS
    • BOHEMIA INTERACTIVE - GENERAL
  • FEATURED GAMES
    • Vigor
    • DAYZ
    • ARMA 3
    • ARMA 2
    • YLANDS
  • MOBILE GAMES
    • ARMA MOBILE OPS
    • MINIDAYZ
    • ARMA TACTICS
    • ARMA 2 FIRING RANGE
  • BI MILITARY GAMES FORUMS
  • BOHEMIA INCUBATOR
    • PROJECT LUCIE
  • OTHER BOHEMIA GAMES
    • ARGO
    • TAKE ON MARS
    • TAKE ON HELICOPTERS
    • CARRIER COMMAND: GAEA MISSION
    • ARMA: ARMED ASSAULT / COMBAT OPERATIONS
    • ARMA: COLD WAR ASSAULT / OPERATION FLASHPOINT
    • IRON FRONT: LIBERATION 1944
    • BACK CATALOGUE
  • OFFTOPIC
    • OFFTOPIC
  • Die Hard OFP Lovers' Club's Topics
  • ArmA Toolmakers's Releases
  • ArmA Toolmakers's General
  • Japan in Arma's Topics
  • Arma 3 Photography Club's Discussions
  • The Order Of the Wolfs- Unit's Topics
  • 4th Infantry Brigade's Recruitment
  • 11th Marine Expeditionary Unit OFFICIAL | 11th MEU(SOC)'s 11th MEU(SOC) Recruitment Status - OPEN
  • Legion latina semper fi's New Server Legion latina next wick
  • Legion latina semper fi's https://www.facebook.com/groups/legionlatinasemperfidelis/
  • Legion latina semper fi's Server VPN LEGION LATINA SEMPER FI
  • Team Nederland's Welkom bij ons club
  • Team Nederland's Facebook
  • [H.S.O.] Hellenic Special Operations's Infos
  • BI Forum Ravage Club's Forum Topics
  • Exilemod (Unofficial)'s General Discussion
  • Exilemod (Unofficial)'s Scripts
  • Exilemod (Unofficial)'s Addons
  • Exilemod (Unofficial)'s Problems & Bugs
  • Exilemod (Unofficial)'s Exilemod Tweaks
  • Exilemod (Unofficial)'s Promotion
  • Exilemod (Unofficial)'s Maps - Mission Files
  • TKO's Weferlingen
  • TKO's Virolahti
  • TKO's Livonia
  • TKO's Rules
  • TKO's Changelog
  • TKO's Help
  • TKO's What we Need
  • TKO's Australia
  • MSOF A3 Wasteland's Server Game Play Features
  • MSOF A3 Wasteland's Problems & Bugs
  • MSOF A3 Wasteland's Maps in Rotation
  • SOS GAMING's Server
  • SOS GAMING's News on Server
  • SOS GAMING's Regeln / Rules
  • SOS GAMING's Ghost-Town-Team
  • SOS GAMING's Steuerung / Keys
  • SOS GAMING's Div. Infos
  • SOS GAMING's Small Talk
  • NAMC's Topics
  • NTC's New Members
  • NTC's Enlisted Members
  • The STATE's Topics
  • CREATIONARTISTS's Intoduction

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Website URL


Yahoo


Jabber (xmpp)


Skype


Biography


Twitter


Google+


Youtube


Vimeo


Xfire


Steam url id


Raptr


MySpace


Linkedin


Tumblr


Flickr


XBOX Live


PlayStation PSN


Origin


PlayFire


SoundCloud


Pinterest


Reddit


Twitch.Tv


Ustream.Tv


Duxter


Instagram


Location


Interests


Interests


Occupation

Found 2 results

  1. I made a script that choreographs an execution sequence (yeah its pretty grim). For it to work there is constant meddling in AI behaviour settings. The problem is that some enemy might suddenly appear and try to stop it, so AI must react accordingly and return to its normal settings if that happens. To do this I put a check for enemies before each block in the execution sequence. It works but it seems an overcomplicated way of achieving this. I read about exitwith {} and breakout but they seem to be of use inside control structures or loops and not for interrupting a single sequence. To stop a script from continue and do something else instead is a pretty useful thing even in other situations so I was wondering: anybody have a solution for this? //execution script //place a group of soldiers in front of a group of prisioners. name each group "executioners" and "prisioners" and launch this script; other soldiers can also be around and they won't engage the prisioners. //systemchat "start"; private _exec = units executioners; private _pris = units prisioners; private _officer = leader executioners; private _all = []; private _squad = _exec - [_officer]; //put all friendly units to executioners side in a radius of 300 in an array { if (((_x distance (getpos _officer)) < 300) && (side _x == side executioners)) then { _all pushback _x; }; } forEach allunits; //make all of them pacifists { _x setbehaviour "careless"; _x setcombatMode "blue"; } forEach _all; //take note of each units voice to give them back later, also officers weapons private _voicesquad = []; private _voicepris = []; {_voicesquad pushback (speaker _x)} forEach _squad; {_voicepris pushback (speaker _x)} forEach _pris; private _officervoice = speaker _officer; private _weapon = primaryweapon (_squad select 0); private _mags = (magazines (_squad select 0)) select 0; //executioners and prisioners stand up, shut up and stay put { _x disableAI "path"; _x setunitPos "UP"; _x setSpeaker "NoVoice" } forEach (_exec + _pris); //remove stuff from prisioners { private _unit = _x; _unit setcaptive true; removeallweapons _unit; removeAllAssignedItems _unit; {_unit removeMagazine _x} forEach magazines _unit; } forEach _pris; //create directions for facing private _dir = (_officer getdir (_exec select 1)) - 90; private _front = _officer getpos [300,_dir]; private _right = _officer getpos [300,_dir + 90]; private _back = _officer getpos [300,_dir + 180]; private _left = _officer getpos [300,_dir - 90]; private _pos = getpos _officer; removeallweapons _officer; removeAllAssignedItems _officer; //make groups face each other {_x doWatch _front} forEach _squad; {_x doWatch _back} forEach _pris; //STOP SCRIPT CONDITION--------------------------------------------- //if an enemy comes the execution sequence should interrupt and the menace dealt with. private _execution = true; _reset = { { _x setbehaviour "safe"; _x enableAI "path"; _x enableAI "target"; _x setcombatmode "YELLOW"; _x forceWalk false; } forEach _all; { _x setSpeaker (_voicesquad select _forEachIndex); } forEach _squad; { _x setSpeaker (_voicepris select _forEachIndex); _x setcaptive false; } forEach _pris; _officer setSpeaker _officervoice; _officer addmagazines [_mags,4]; _officer addweapon _weapon; _execution = false; }; //the above reset function will be called if an enemy (with the exeception of the prisioner group) closer than 400 is detected. the enemy detection function will be called before every step in the execution sequence private _enemypresent = false; _checkenemies = { private _enemy = []; { if (((_x distance _pos) < 400) && (side _x != side executioners)) then { _enemy pushback _x; }; } forEach allunits; _enemy = _enemy - _pris; { if ((side executioners) knowsAbout _x > 1.5) then {_enemypresent = true}; } forEach _enemy; if _enemypresent then {call _reset}; }; sleep 5; //systemchat "aim"; //AIM------------------------------------------------- call _checkenemies; if _execution then { executioners setBehaviour "aware"; {_x setCaptive false} forEach _pris; {_x doTarget (leader prisioners)} forEach _squad; _officer doWatch _right; sleep 5; }; //systemchat "fire"; //FIRE------------------------------------------------- _officer setspeaker _officervoice; executioners setcombatmode "red"; //wait until all prisioners are dead waituntil {{alive _x} count _pris == 0}; //systemchat "lower weapons"; //LOWERWEAPONS---------------------------------------- call _checkenemies; if _execution then { { _x disableAI 'TARGET'; } forEach _squad; executioners setbehaviour "careless"; _officer doWatch _right; _officer setspeaker "noVoice"; sleep 5; }; //systemchat "turn"; //TURN------------------------------------------------ call _checkenemies; if _execution then { {_x dowatch _back} forEach _squad; sleep 5; }; //systemchat "move"; //MOVE------------------------------------------------- call _checkenemies; if _execution then { { _x enableAI "path"; _x enableAI 'TARGET'; _x forceWalk true; _x doMove _back; } forEach _squad; sleep 10; }; //AT EASE----------------------------------------------- call _checkenemies; if _execution then { {_x doWatch _right} forEach _exec; _officer enableAI "path"; _squad doFollow _officer; //return weapon to officer _officer addmagazines [_mags,4]; _officer addweapon _weapon; _officer setspeaker _officervoice; sleep 2; }; //GARRISON------------------------------------------------- call _checkenemies; if _execution then { {_x setbehaviour "safe"} forEach _all; private _defendpos = getpos (nearestbuilding _pos); if (_defendpos isEqualTo [0,0,0]) then {_defendpos = _pos}; [executioners,_defendpos,100,3,0,0.5] call CBA_fnc_taskDefend; sleep 2; }; //RETURN TO NORMAL----------------------------------------- call _reset;
  2. Hello, I was wondering if there was any progress made towards being able to cancel actions such as reloading a rocket launcher, or switching weapons while moving. I recall a developer saying that it was difficult due to their animation engine, but I was wondering if there was any official progress on it, since there has been a mod allowing you to do it since 2013. Thanks
×