Hello community,
It's been a while since i annoyed the forum with my questions. But the up side is that from this very forum i learned darkbasic as much as i needed to and with the help of other people from this forum of course and i like to thank you all for that!
Problem:
DarkAI: - Adding more than 3 or 4 characters in the scene with meshes that TGC sold a few years ago on their website, the one that has military models, slows down my application from 60 51 even 39 or 45. The code for dark ai is:
ADDING:
if artificialintelligencetype$ = "enemy" = 1
ai add enemy artintld
ENDIF
if artificialintelligencetype$ = "friendly" = 1
ai add friendly artintld
ENDIF
//CONFIGURE ARTIFICIAL INTELLIGENCE OBJECTS
AI Set Entity View Arc artintld, val(artificialintelligenceviewarcinner$), val(artificialintelligenceviewarcoutter$)
AI Set Entity View Range artintld, val(artificialintelligenceviewrange$)
AI Set Entity Hearing Range artintld, val(artificialintelligencehearingrange$)
AI Set Entity Can Strafe artintld, val(artificialintelligencecanstrafe$)
AI Set Entity Can Search artintld, val(artificialintelligencecansearch$)
ai entity add target artintld, val(artificialintelligencetarget$)
AI Set Entity Stance artintld, val(artificialintelligencestance$)
ai set entity can roam artintld, val(artificialintelligencecanroam$)
LOOP:
function artificialintelligenceresourcesload()
ai start
ai set radius 27
ENDFUNCTION
function artificialintelligence()
for artint = 1 to 50000
if ai entity exist(artint) = 1
artificialintelligencearrayvar(artint).artintthghtenem$ = AI GET ENTITY ACTION$(artint)
artificialintelligencearrayvar(artint).artinttgttrgtenem = AI GET ENTITY TARGET ID(artint, 1)
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Moving Forwards" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
//FRIENDLY
if artificialintelligencearrayvar(artint).artificialintelligencetype = "friendly"
if artificialintelligencearrayvar(artint).artificialintelligencefriendlyfollow = 0 and artificialintelligencearrayvar(artint).artificialintelligencefriendlygotoposition = 0
set object speed artint, 50
ai set entity speed artint, 200
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationend `738, 760
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
endif
endif
endif
endif
endif
endif
endif
//ENEMY
if artificialintelligencearrayvar(artint).artificialintelligencetype = "enemy"
set object speed artint, 30
ai set entity speed artint, 75
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationend `738, 760
endif
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Moving Backwards" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
//FRIENDLY
if artificialintelligencearrayvar(artint).artificialintelligencetype = "friendly"
if artificialintelligencearrayvar(artint).artificialintelligencefriendlyfollow = 0 and artificialintelligencearrayvar(artint).artificialintelligencefriendlygotoposition = 0
set object speed artint, -50
ai set entity speed artint, 155
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationend `738, 760
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
endif
endif
endif
endif
endif
//FOLLOWING
if artificialintelligencearrayvar(artint).artificialintelligencetype = "friendly"
if artificialintelligencearrayvar(artint).artificialintelligencefriendlyfollow = 1
set object speed artint, -50
ai set entity speed artint, 155
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencerunninganimationstart, artificialintelligencearrayvar(artint).artificialintelligencerunninganimationend `803,819
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
endif
endif
endif
endif
endif
//ENEMY
if artificialintelligencearrayvar(artint).artificialintelligencetype = "enemy"
set object speed artint, -30
ai set entity speed artint, 75
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsanimationend `738, 760
endif
endif
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Strafing Right" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, 50
ai set entity speed artint, 200
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencestrafingrightanimationstart, artificialintelligencearrayvar(artint).artificialintelligencestrafingrightanimationend `1171, 1190
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
endif
endif
endif
endif
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Strafing Left" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, 500
ai set entity speed artint, 200
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencestrafingleftanimationstart, artificialintelligencearrayvar(artint).artificialintelligencestrafingleftanimationend `1151, 1170
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootstepwalkdelay = 31
endif
endif
endif
endif
endif
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Moving Backwards And Attacking" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, -50
ai set entity speed artint, 155
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingbackwardsandattackinganimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingbackwardsandattackinganimationend `1192, 1208
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
endif
endif
endif
//ENEMY FIRE - DECREASE PLAYER HEALTH
artificialintelligencearrayvar(artint).enemfrenem = artificialintelligencearrayvar(artint).enemfrenem + 1
if artificialintelligencearrayvar(artint).enemfrenem = 2
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber `8
endif
ai create sound object position x(artint), object position z(artint), 2, 300
//FRIENDLY HURT SOUND
if artificialintelligencearrayvar(artint).artinttgttrgtenem < 5000
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber `18
endif
endif
endif
if hittimeenem < 20
inc hittimeenem
endif
if hittimeenem >= 20
hittimeenem = 0
artificialintelligencearrayvar(artint).enemfrenem = 0
endif
endif
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Stopped And Attacking" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, 50
ai set entity speed artint, 50
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencestoppedandattackinganimationstart, artificialintelligencearrayvar(artint).artificialintelligencestoppedandattackinganimationend `1101, 1125
//ENEMY FIRE - DECREASE PLAYER HEALTH
artificialintelligencearrayvar(artint).enemfrenem = artificialintelligencearrayvar(artint).enemfrenem + 1
if artificialintelligencearrayvar(artint).enemfrenem = 2
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber `8
endif
ai create sound object position x(artint), object position z(artint), 2, 300
if artificialintelligencearrayvar(artint).artinttgttrgtenem < 5000
//DECREASE ENEMY ROUNDS
if artificialintelligencearrayvar(artint).artificialintelligencerounds > 0
dec artificialintelligencearrayvar(artint).artificialintelligencerounds
endif
if artificialintelligencearrayvar(artint).artificialintelligenceheatlh > 0
dec artificialintelligencearrayvar(artint).artificialintelligenceheatlh, 5
endif
scale object artificialintelligencearrayvar(artint).artificialintelligencehealthbarobjectnumber, object scale x(artificialintelligencearrayvar(artint).artificialintelligencehealthbarobjectnumber) - 2.5, object scale y(artificialintelligencearrayvar(artint).artificialintelligencehealthbarobjectnumber), object scale z(artificialintelligencearrayvar(artint).artificialintelligencehealthbarobjectnumber)
//BLOOD
newblood = sp copy system( blood , rnd(5) + object position x(artificialintelligencearrayvar(artint).artinttgttrgtenem) + 15, rnd(5) + object position y(artificialintelligencearrayvar(artint).artinttgttrgtenem) + object size y(artificialintelligencearrayvar(artint).artinttgttrgtenem) - 35, rnd(5) + object position z(artificialintelligencearrayvar(artint).artinttgttrgtenem) + 15)
ENDIF
//FRIENDLY HURT SOUND
if artificialintelligencearrayvar(artint).artinttgttrgtenem < 5000
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber `18
endif
endif
endif
//FIRE RATIO
if artificialintelligencearrayvar(artint).artificialintelligencefireratio > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefireratio
endif
if artificialintelligencearrayvar(artint).artificialintelligencefireratio = 0
artificialintelligencearrayvar(artint).artificialintelligencefireratio = artificialintelligencearrayvar(artint).artificialintelligenceinitialfireration
artificialintelligencearrayvar(artint).enemfrenem = 0
endif
ENDIF
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Stopped" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, 30
ai set entity speed artint, 30
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencestoppedanimationstart, artificialintelligencearrayvar(artint).artificialintelligencestoppedanimationend `1001, 1025
ENDIF
if artificialintelligencearrayvar(artint).artintthghtenem$ = "Moving Forwards And Attacking" and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
set object speed artint, 50
ai set entity speed artint, 200
loop object artint, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsandattackinganimationstart, artificialintelligencearrayvar(artint).artificialintelligencemovingforwardsandattackinganimationend `1192, 1208
//FOOTSTEPS
if artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber > 0 and artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber > 0
if sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber) = 0 and sound playing(artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber) = 0
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay
endif
if artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 0
nmbrtst = rnd(2)
if nmbrtst = 0
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundonesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundtwosoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
if nmbrtst = 2
play sound artificialintelligencearrayvar(artint).artificialintelligencefootstepsoundthreesoundnumber
artificialintelligencearrayvar(artint).artificialintelligencefootsteprundelay = 9
endif
endif
endif
endif
ai set radius 27
//ENEMY FIRE - DECREASE PLAYER HEALTH
artificialintelligencearrayvar(artint).enemfrenem = artificialintelligencearrayvar(artint).enemfrenem + 1
if artificialintelligencearrayvar(artint).enemfrenem = 2
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencefiresoundnumber `8
endif
ai create sound object position x(artint), object position z(artint), 2, 300
//FRIENDLY HURT SOUND
if artificialintelligencearrayvar(artint).artinttgttrgtenem < 5000
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencehurtsoundnumber `18
endif
endif
endif
//FIRE RATIO
if artificialintelligencearrayvar(artint).artificialintelligencefireratio > 0
dec artificialintelligencearrayvar(artint).artificialintelligencefireratio
endif
if artificialintelligencearrayvar(artint).artificialintelligencefireratio = 0
artificialintelligencearrayvar(artint).artificialintelligencefireratio = artificialintelligencearrayvar(artint).artificialintelligenceinitialfireration
artificialintelligencearrayvar(artint).enemfrenem = 0
endif
//ENEMY DIE `DE MODIFICAT
if artificialintelligencearrayvar(artint).artificialintelligenceheatlh =< 0
artificialintelligencearrayvar(artint).artintdenem = artificialintelligencearrayvar(artint).artintdenem + 1
if artificialintelligencearrayvar(artint).artintdenem = 2
set object speed artint, 50
ai set entity speed artint, 50
ai kill entity artint
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencedeathsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencedeathsoundnumber `9
endif
play object artint, artificialintelligencearrayvar(artint).artificialintelligencedeathanimationstart, artificialintelligencearrayvar(artint).artificialintelligencedeathanimationend `40, 59
//AFTER DEATH SOUND
if artificialintelligencearrayvar(artint).artificialintelligencetype = "enemy" = 1
play sound 10
endif
//ENEMY DEAD
artificialintelligencearrayvar(artint).artificialintelligenceenemydead = 1
//HIDE HEALTH BAR
hide object artificialintelligencearrayvar(artint).artificialintelligencehealthbarobjectnumber
//RESET VARIABLES
kllnganncersnds = 0
scrinc = 0
enemklldplysnd = 0
plyaiowhnscreincrsdvar = 0
endif
if object frame(artint) >= artificialintelligencearrayvar(artint).artificialintelligencedeathanimationend `59
artificialintelligencearrayvar(artint).enmdwnsndenem = artificialintelligencearrayvar(artint).enmdwnsndenem + 1
if artificialintelligencearrayvar(artint).enmdwnsndenem = 2
//BODY DROP SOUND
play sound 59
endif
//POSITION WEAPON
if artificialintelligencearrayvar(artint).artificialintelligenceweaponnumber > 0
if object exist(artificialintelligencearrayvar(artint).artificialintelligenceweaponnumber) = 1
unglue object artificialintelligencearrayvar(artint).artificialintelligenceweaponnumber
position object artificialintelligencearrayvar(artint).artificialintelligenceweaponnumber, object position x(artint), object position y(2) + 28, object position z(artint) + object size z(artint) + 55
zrotate object artificialintelligencearrayvar(artint).artificialintelligenceweaponnumber, 90
endif
endif
endif
ENDIF
//ENEMY CAN FIRE
if ai entity exist(artint) = 1
artificialintelligencearrayvar(artint).enemcnfrenem = ai get entity can fire(artint)
if artificialintelligencearrayvar(artint).enemcnfrenem = 1
artificialintelligencearrayvar(artint).trgtseeenem = artificialintelligencearrayvar(artint).trgtseeenem + 1
if artificialintelligencearrayvar(artint).trgtseeenem = 2
//TARGET SEE SOUND
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencetargetseesoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencetargetseesoundnumber `54
endif
endif
ENDIF
if artificialintelligencearrayvar(artint).enemcnfrenem = 0
artificialintelligencearrayvar(artint).trgtseeenem = 0
ENDIF
endif
//RELOAD ROUNDS
if artificialintelligencearrayvar(artint).artificialintelligencerounds = 0 and artificialintelligencearrayvar(artint).artificialintelligenceheatlh > 0
artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 1
artificialintelligencearrayvar(artint).enemrld = artificialintelligencearrayvar(artint).enemrld + 1
if artificialintelligencearrayvar(artint).enemrld = 2
if artificialintelligencearrayvar(artint).artificialintelligencereloadsoundnumber > 0
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencereloadsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencereloadsoundnumber
endif
endif
play object artint, artificialintelligencearrayvar(artint).artificialintelligencereloadanimationstart, artificialintelligencearrayvar(artint).artificialintelligencereloadanimationend `1210, 1269
endif
endif
if object frame(artint) >= artificialintelligencearrayvar(artint).artificialintelligencereloadanimationend and artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 1
artificialintelligencearrayvar(artint).artificialintelligencerounds = 9
artificialintelligencearrayvar(artint).enemrld = 0
artificialintelligencearrayvar(artint).artificialintelligenceenemyreload = 0
endif
//FRIENDLY LOW HEALTH
if artificialintelligencearrayvar(artint).artificialintelligencetype = "friendly" = 1 and artificialintelligencearrayvar(artint).artificialintelligenceheatlh < 45
artificialintelligencearrayvar(artint).frndlylwhlth = artificialintelligencearrayvar(artint).frndlylwhlth + 1
if artificialintelligencearrayvar(artint).frndlylwhlth = 2
if sound exist(artificialintelligencearrayvar(artint).artificialintelligencelowhealthsoundnumber) = 1
play sound artificialintelligencearrayvar(artint).artificialintelligencelowhealthsoundnumber `53
endif
endif
endif
endif
NEXT artint
I know it's a lot to dig up...
As for the pick object... is there any workaround for us to raise the performance when detecting objects? I don't know... like... calculating the distance between cursor and objects or... is it ok to detect objects that only has a specific property?
Thank you in advance!
Alex Matei
www.alexmatei.com