+/*
+Copyright (C) 2003, 2010 - Wolfire Games
+
+This file is part of Lugaru.
+
+Lugaru is free software; you can redistribute it and/or
+modify it under the terms of the GNU General Public License
+as published by the Free Software Foundation; either version 2
+of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+*/
+
-extern FSOUND_STREAM * strm[10];
-extern "C" void PlaySoundEx(int channel, FSOUND_SAMPLE *sptr, FSOUND_DSPUNIT *dsp, signed char startpaused);
-extern "C" void PlayStreamEx(int chan, FSOUND_STREAM *sptr, FSOUND_DSPUNIT *dsp, signed char startpaused);
+extern OPENAL_STREAM * strm[20];
+extern "C" void PlaySoundEx(int channel, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused);
+extern "C" void PlayStreamEx(int chan, OPENAL_STREAM *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
- sprites.MakeSprite(flamesprite, flatfacing,flatvelocity, 1,1,1, 2, 1);
+ Sprite::MakeSprite(flamesprite, flatfacing,flatvelocity, 1,1,1, 2, 1);
- PlaySoundEx( firestartsound, samp[firestartsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[firestartsound], gLoc, vel);
- FSOUND_SetVolume(channels[firestartsound], 256);
- FSOUND_SetPaused(channels[firestartsound], FALSE);
+ PlaySoundEx( firestartsound, samp[firestartsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[firestartsound], gLoc, vel);
+ OPENAL_SetVolume(channels[firestartsound], 256);
+ OPENAL_SetPaused(channels[firestartsound], false);
- //PlaySoundEx( firesound, samp[firesound], NULL, TRUE);
- PlayStreamEx( stream_firesound, strm[stream_firesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[stream_firesound], gLoc, vel);
- FSOUND_SetVolume(channels[stream_firesound], 256);
- FSOUND_SetPaused(channels[stream_firesound], FALSE);
+ //PlaySoundEx( firesound, samp[firesound], NULL, true);
+ PlayStreamEx( stream_firesound, strm[stream_firesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[stream_firesound], gLoc, vel);
+ OPENAL_SetVolume(channels[stream_firesound], 256);
+ OPENAL_SetPaused(channels[stream_firesound], false);
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
- sprites.MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
- }
+ Sprite::MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
+ }
- if(skeleton.free){
- bloodvel-=DoRotation(skeleton.forward*10*scale,((float)(Random()%100))/4,((float)(Random()%100))/4,0);
- }
- if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
- if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
- sprites.MakeSprite(splintersprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.special[sprites.numsprites-1]=3;
- }
- if(!skeleton.free){
- sprites.MakeSprite(splintersprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.special[sprites.numsprites-1]=3;
+ Sprite::MakeSprite(splintersprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
+ } else {
+ Sprite::MakeSprite(splintersprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- if(creature==wolftype)
- while(wolfbloodText[bleedxint*512*3+bleedyint*3+0]>which+4||wolfbloodText[bleedxint*512*3+bleedyint*3+0]<which-4||bleedxint<10||bleedyint<10||bleedxint>500||bleedyint>500){
- bleedxint=abs(Random()%512);
- bleedyint=abs(Random()%512);
- }
- bleedy=bleedxint;
- bleedx=bleedyint;
- bleedy/=realtexdetail;
- bleedx/=realtexdetail;
- direction=abs(Random()%2)*2-1;
+ if(creature==wolftype)
+ while(wolfbloodText[bleedxint*512*3+bleedyint*3+0]>which+4||wolfbloodText[bleedxint*512*3+bleedyint*3+0]<which-4||bleedxint<10||bleedyint<10||bleedxint>500||bleedyint>500){
+ bleedxint=abs(Random()%512);
+ bleedyint=abs(Random()%512);
+ }
+ bleedy=bleedxint;
+ bleedx=bleedyint;
+ bleedy/=realtexdetail;
+ bleedx/=realtexdetail;
+ direction=abs(Random()%2)*2-1;
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- FSOUND_SetVolume(channels[whichsound], 512);
- FSOUND_SetPaused(channels[whichsound], FALSE);
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whichsound], 512);
+ OPENAL_SetPaused(channels[whichsound], false);
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
- sprites.MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
- }
+ Sprite::MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
+ }
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
if(skeleton.free){
- sprites.MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, skeleton.joints[skeleton.jointlabels[head]].position*scale+coords,bloodvel, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- sprites.MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
- }
+ Sprite::MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodflamesprite, DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .3, 1);
+ }
- PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
- FSOUND_SetVolume(channels[swordstaffsound], 512);
- FSOUND_SetPaused(channels[swordstaffsound], FALSE);
+ PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
+ OPENAL_SetVolume(channels[swordstaffsound], 512);
+ OPENAL_SetPaused(channels[swordstaffsound], false);
- PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);
+ PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);
- /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);*/
+ /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);*/
- PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
- FSOUND_SetVolume(channels[swordstaffsound], 512);
- FSOUND_SetPaused(channels[swordstaffsound], FALSE);
+ PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
+ OPENAL_SetVolume(channels[swordstaffsound], 512);
+ OPENAL_SetPaused(channels[swordstaffsound], false);
- PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);
+ PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);
- /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);*/
+ /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);*/
flatvelocity2.x+=(float)(abs(Random()%100)-50)/10;
flatvelocity2.y+=(float)(abs(Random()%100)-50)/10;
flatvelocity2.z+=(float)(abs(Random()%100)-50)/10;
flatvelocity2.x+=(float)(abs(Random()%100)-50)/10;
flatvelocity2.y+=(float)(abs(Random()%100)-50)/10;
flatvelocity2.z+=(float)(abs(Random()%100)-50)/10;
- sprites.MakeSprite(bloodflamesprite, flatfacing2,flatvelocity2, 1,1,1, 3, 1);
- sprites.MakeSprite(bloodsprite, flatfacing2,flatvelocity2, 1,1,1, .4, 1);
- sprites.MakeSprite(cloudsprite, flatfacing2,flatvelocity2*0, .6,0,0, 1, .5);
+ Sprite::MakeSprite(bloodflamesprite, flatfacing2,flatvelocity2, 1,1,1, 3, 1);
+ Sprite::MakeSprite(bloodsprite, flatfacing2,flatvelocity2, 1,1,1, .4, 1);
+ Sprite::MakeSprite(cloudsprite, flatfacing2,flatvelocity2*0, .6,0,0, 1, .5);
- PlaySoundEx( splattersound, samp[splattersound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[splattersound], gLoc, vel);
- FSOUND_SetVolume(channels[splattersound], 256);
- FSOUND_SetPaused(channels[splattersound], FALSE);
+ PlaySoundEx( splattersound, samp[splattersound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[splattersound], gLoc, vel);
+ OPENAL_SetVolume(channels[splattersound], 256);
+ OPENAL_SetPaused(channels[splattersound], false);
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- FSOUND_SetVolume(channels[whichsound], 512);
- FSOUND_SetPaused(channels[whichsound], FALSE);
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whichsound], 512);
+ OPENAL_SetPaused(channels[whichsound], false);
if(which==0)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[leftfoot]].position,0,rotation,0)*scale+coords;
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
//footpoint.y=coords.y;
if(which==0)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[leftfoot]].position,0,rotation,0)*scale+coords;
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
//footpoint.y=coords.y;
- if(findDistancefast(&footpoint,&viewer))sprites.MakeSprite(cloudsprite, footpoint,footvel, 1,1,1, .5, .2*opacity);
+ if(findDistancefast(&footpoint,&viewer))Sprite::MakeSprite(cloudsprite, footpoint,footvel, 1,1,1, .5, .2*opacity);
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
- if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)sprites.MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x,terrainlight.y,terrainlight.z, .5, .7*opacity);
+ if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)Sprite::MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x,terrainlight.y,terrainlight.z, .5, .7*opacity);
if(opacity>=1||detail==2)if(detail==2)if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)terrain.MakeDecal(footprintdecal,footpoint,.2,1*opacity,rotation);
}
else if(environment==grassyenvironment&&onterrain&&terrain.getOpacity(coords.x,coords.z)<.2){
if(opacity>=1||detail==2)if(detail==2)if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)terrain.MakeDecal(footprintdecal,footpoint,.2,1*opacity,rotation);
}
else if(environment==grassyenvironment&&onterrain&&terrain.getOpacity(coords.x,coords.z)<.2){
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
- if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)sprites.MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x*90/255,terrainlight.y*70/255,terrainlight.z*8/255, .5, .5*opacity);
+ if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)Sprite::MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x*90/255,terrainlight.y*70/255,terrainlight.z*8/255, .5, .5*opacity);
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
footpoint.y=terrain.getHeight(footpoint.x,footpoint.z);
terrainlight=terrain.getLighting(footpoint.x,footpoint.z);
- if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)sprites.MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x*190/255,terrainlight.y*170/255,terrainlight.z*108/255, .5, .7*opacity);
+ if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)Sprite::MakeSprite(cloudsprite, footpoint,footvel*.6, terrainlight.x*190/255,terrainlight.y*170/255,terrainlight.z*108/255, .5, .7*opacity);
if(opacity>=1||detail==2)if(detail==2)if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)terrain.MakeDecal(footprintdecal,footpoint,.2,.25*opacity,rotation);
}
else if(isLanding()||targetanimation==jumpupanim||isLandhard())
if(opacity>=1||detail==2)if(detail==2)if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)terrain.MakeDecal(footprintdecal,footpoint,.2,.25*opacity,rotation);
}
else if(isLanding()||targetanimation==jumpupanim||isLandhard())
if(which==0)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[leftfoot]].position,0,rotation,0)*scale+coords;
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
//footpoint.y=coords.y;
if(which==0)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[leftfoot]].position,0,rotation,0)*scale+coords;
if(which==1)footpoint=DoRotation(skeleton.joints[skeleton.jointlabels[rightfoot]].position,0,rotation,0)*scale+coords;
//footpoint.y=coords.y;
- if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)sprites.MakeSprite(cloudsprite, footpoint,footvel*.6, 1,1,1, .5, .2*opacity);
+ if(findDistancefast(&footpoint,&viewer)<viewdistance*viewdistance/4)Sprite::MakeSprite(cloudsprite, footpoint,footvel*.6, 1,1,1, .5, .2*opacity);
- sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,1,1, .9, .3);
+ Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,1,1, .9, .3);
- FSOUND_3D_SetAttributes(channels[whooshsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshsound], 64*findLength(&velocity)/5);
+ OPENAL_3D_SetAttributes(channels[whooshsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshsound], 64*findLength(&velocity)/5);
- PlaySoundEx( fireendsound, samp[fireendsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fireendsound], gLoc, vel);
- FSOUND_SetVolume(channels[fireendsound], 256);
- FSOUND_SetPaused(channels[fireendsound], FALSE);
- FSOUND_SetPaused(channels[stream_firesound], TRUE);
+ PlaySoundEx( fireendsound, samp[fireendsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fireendsound], gLoc, vel);
+ OPENAL_SetVolume(channels[fireendsound], 256);
+ OPENAL_SetPaused(channels[fireendsound], false);
+ OPENAL_SetPaused(channels[stream_firesound], true);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifesheathesound], 128);
- FSOUND_SetPaused(channels[knifesheathesound], FALSE);
+ PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifesheathesound], 128);
+ OPENAL_SetPaused(channels[knifesheathesound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
if(terrain.getOpacity(coords.x,coords.z)>=.2){
if(animation[targetanimation].label[targetframe]==1)whichsound=footstepsound3;
else whichsound=footstepsound4;
if(terrain.getOpacity(coords.x,coords.z)>=.2){
if(animation[targetanimation].label[targetframe]==1)whichsound=footstepsound3;
else whichsound=footstepsound4;
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- if(whichsound!=knifeswishsound)FSOUND_SetVolume(channels[whichsound], 128);
- if(whichsound!=knifeswishsound&&(targetanimation==staffhitanim||targetanimation==staffgroundsmashanim||targetanimation==staffspinhitanim))FSOUND_SetVolume(channels[whichsound], 256);
- if(whichsound==knifeswishsound)FSOUND_SetVolume(channels[whichsound], 512);
- FSOUND_SetPaused(channels[whichsound], FALSE);
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ if(whichsound!=knifeswishsound)OPENAL_SetVolume(channels[whichsound], 128);
+ if(whichsound!=knifeswishsound&&(targetanimation==staffhitanim||targetanimation==staffgroundsmashanim||targetanimation==staffspinhitanim))OPENAL_SetVolume(channels[whichsound], 256);
+ if(whichsound==knifeswishsound)OPENAL_SetVolume(channels[whichsound], 512);
+ OPENAL_SetPaused(channels[whichsound], false);
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- FSOUND_SetVolume(channels[whichsound], 128);
- FSOUND_SetPaused(channels[whichsound], FALSE);
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whichsound], 128);
+ OPENAL_SetPaused(channels[whichsound], false);
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- FSOUND_SetVolume(channels[whichsound], 512);
- FSOUND_SetPaused(channels[whichsound], FALSE);
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whichsound], 512);
+ OPENAL_SetPaused(channels[whichsound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
- PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabremovesound], 128);
- FSOUND_SetPaused(channels[fleshstabremovesound], FALSE);
+ PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabremovesound], 128);
+ OPENAL_SetPaused(channels[fleshstabremovesound], false);
footpoint=weapons.position[i];
if(victim->weaponstuck!=-1){
if(victim->weaponids[victim->weaponstuck]==i){
footpoint=weapons.position[i];
if(victim->weaponstuck!=-1){
if(victim->weaponids[victim->weaponstuck]==i){
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .8, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .8, .3);
- PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifesheathesound], 128);
- FSOUND_SetPaused(channels[knifesheathesound], FALSE);
+ PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifesheathesound], 128);
+ OPENAL_SetPaused(channels[knifesheathesound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
- PlaySoundEx( jumpsound, samp[jumpsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[jumpsound], gLoc, vel);
- FSOUND_SetVolume(channels[jumpsound], 128);
- FSOUND_SetPaused(channels[jumpsound], FALSE);
+ PlaySoundEx( jumpsound, samp[jumpsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[jumpsound], gLoc, vel);
+ OPENAL_SetVolume(channels[jumpsound], 128);
+ OPENAL_SetPaused(channels[jumpsound], false);
- PlaySoundEx( jumpsound, samp[jumpsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[jumpsound], gLoc, vel);
- FSOUND_SetVolume(channels[jumpsound], 128);
- FSOUND_SetPaused(channels[jumpsound], FALSE);
+ PlaySoundEx( jumpsound, samp[jumpsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[jumpsound], gLoc, vel);
+ OPENAL_SetVolume(channels[jumpsound], 128);
+ OPENAL_SetPaused(channels[jumpsound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshhitsound], 512);
- FSOUND_SetPaused(channels[whooshhitsound], FALSE);
+ PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshhitsound], 512);
+ OPENAL_SetPaused(channels[whooshhitsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 160);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 160);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 160);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 160);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshhitsound], 512);
- FSOUND_SetPaused(channels[whooshhitsound], FALSE);
+ PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshhitsound], 512);
+ OPENAL_SetPaused(channels[whooshhitsound], false);
- /*PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 128);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ /*PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 128);
+ OPENAL_SetPaused(channels[landsound2], false);
- PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
- FSOUND_SetVolume(channels[movewhooshsound], 128);
- FSOUND_SetPaused(channels[movewhooshsound], FALSE);
+ PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
+ OPENAL_SetVolume(channels[movewhooshsound], 128);
+ OPENAL_SetPaused(channels[movewhooshsound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( thudsound, samp[thudsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[thudsound], gLoc, vel);
- FSOUND_SetVolume(channels[thudsound], 400);
- FSOUND_SetPaused(channels[thudsound], FALSE);
+ PlaySoundEx( thudsound, samp[thudsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[thudsound], gLoc, vel);
+ OPENAL_SetVolume(channels[thudsound], 400);
+ OPENAL_SetPaused(channels[thudsound], false);
if(!hasvictim){
terrain.MakeDecal(blooddecalfast,(weapons.tippoint[weaponids[weaponactive]]*.8+weapons.position[weaponids[weaponactive]]*.2),.08,.6,Random()%360);
if(!hasvictim){
terrain.MakeDecal(blooddecalfast,(weapons.tippoint[weaponids[weaponactive]]*.8+weapons.position[weaponids[weaponactive]]*.2),.08,.6,Random()%360);
- PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifesheathesound], 128);
- FSOUND_SetPaused(channels[knifesheathesound], FALSE);
+ PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifesheathesound], 128);
+ OPENAL_SetPaused(channels[knifesheathesound], false);
- PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabsound], 128);
- FSOUND_SetPaused(channels[fleshstabsound], FALSE);
+ PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabsound], 128);
+ OPENAL_SetPaused(channels[fleshstabsound], false);
- PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifesheathesound], 128);
- FSOUND_SetPaused(channels[knifesheathesound], FALSE);
+ PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifesheathesound], 128);
+ OPENAL_SetPaused(channels[knifesheathesound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
- PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabremovesound], 128);
- FSOUND_SetPaused(channels[fleshstabremovesound], FALSE);
+ PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabremovesound], 128);
+ OPENAL_SetPaused(channels[fleshstabremovesound], false);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .8, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .8, .3);
if(!hasvictim&&onterrain){
weapons.bloody[weaponids[weaponactive]]=0;
weapons.blooddrip[weaponids[weaponactive]]=0;
if(!hasvictim&&onterrain){
weapons.bloody[weaponids[weaponactive]]=0;
weapons.blooddrip[weaponids[weaponactive]]=0;
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 256);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 256);
+ OPENAL_SetPaused(channels[landsound2], false);
//if(!victim->isIdle()||victim->damage>victim->damagetolerance-60){
if(victim->damage<=victim->damagetolerance-60&&normaldotproduct(victim->facing,victim->coords-coords)<(scale*5)*(scale*5)*0&&animation[victim->targetanimation].height!=lowheight){
if(tutoriallevel!=1){
//if(!victim->isIdle()||victim->damage>victim->damagetolerance-60){
if(victim->damage<=victim->damagetolerance-60&&normaldotproduct(victim->facing,victim->coords-coords)<(scale*5)*(scale*5)*0&&animation[victim->targetanimation].height!=lowheight){
if(tutoriallevel!=1){
- PlaySoundEx( thudsound, samp[thudsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[thudsound], gLoc, vel);
- FSOUND_SetVolume(channels[thudsound], 512);
- FSOUND_SetPaused(channels[thudsound], FALSE);
+ PlaySoundEx( thudsound, samp[thudsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[thudsound], gLoc, vel);
+ OPENAL_SetVolume(channels[thudsound], 512);
+ OPENAL_SetPaused(channels[thudsound], false);
- PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshhitsound], 512);
- FSOUND_SetPaused(channels[whooshhitsound], FALSE);
+ PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshhitsound], 512);
+ OPENAL_SetPaused(channels[whooshhitsound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 256);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
- }
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 256);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
+ }
- PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 256);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 256);
+ OPENAL_SetPaused(channels[landsound2], false);
- PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
- FSOUND_SetVolume(channels[swordstaffsound], 512);
- FSOUND_SetPaused(channels[swordstaffsound], FALSE);
+ PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
+ OPENAL_SetVolume(channels[swordstaffsound], 512);
+ OPENAL_SetPaused(channels[swordstaffsound], false);
- PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);
+ PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);
- aim=victim->coords+DoRotation(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position,0,victim->rotation,0)*victim->scale+victim->velocity*findDistance(&victim->coords,&coords)/50-(coords+DoRotation(skeleton.joints[skeleton.jointlabels[righthand]].position,0,rotation,0)*scale);
+ aim=victim->coords+DoRotation(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position,0,victim->rotation,0)*victim->scale+victim->velocity*findDistance(&victim->coords,&coords)/50-(coords+DoRotation(skeleton.joints[skeleton.jointlabels[righthand]].position,0,rotation,0)*scale);
Normalise(&aim);
/*if(victim->targetanimation==jumpupanim||victim->targetanimation==jumpdownanim){
aim=DoRotation(aim,(float)abs(Random()%15)-7,(float)abs(Random()%15)-7,0);
Normalise(&aim);
/*if(victim->targetanimation==jumpupanim||victim->targetanimation==jumpdownanim){
aim=DoRotation(aim,(float)abs(Random()%15)-7,(float)abs(Random()%15)-7,0);
- PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifeslicesound], 512);
- FSOUND_SetPaused(channels[knifeslicesound], FALSE);
+ PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifeslicesound], 512);
+ OPENAL_SetPaused(channels[knifeslicesound], false);
}
//victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].velocity+=relative*damagemult*200;
if(animation[victim->targetanimation].attack&&(victim->aitype!=playercontrolled||victim->targetanimation==knifeslashstartanim)&&(victim->creature==rabbittype||victim->deathbleeding<=0)){
}
//victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].velocity+=relative*damagemult*200;
if(animation[victim->targetanimation].attack&&(victim->aitype!=playercontrolled||victim->targetanimation==knifeslashstartanim)&&(victim->creature==rabbittype||victim->deathbleeding<=0)){
footvel=0;
if(skeleton.free){
footpoint=(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2*victim->scale+victim->coords;
}
if(!skeleton.free){
footpoint=DoRotation((victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2,0,victim->rotation,0)*victim->scale+victim->coords;
footvel=0;
if(skeleton.free){
footpoint=(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2*victim->scale+victim->coords;
}
if(!skeleton.free){
footpoint=DoRotation((victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2,0,victim->rotation,0)*victim->scale+victim->coords;
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .6, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .6, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .2, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .2, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .2, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .2, 1);
- sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,1,1, .6, .3);
+ Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,1,1, .6, .3);
if(tutoriallevel!=1){
if(normaldotproduct(victim->facing,victim->coords-coords)<0)victim->DoBloodBig(2/victim->armorhigh,190);
else victim->DoBloodBig(2/victim->armorhigh,185);
if(tutoriallevel!=1){
if(normaldotproduct(victim->facing,victim->coords-coords)<0)victim->DoBloodBig(2/victim->armorhigh,190);
else victim->DoBloodBig(2/victim->armorhigh,185);
- PlaySoundEx( swordslicesound, samp[swordslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[swordslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[swordslicesound], 512);
- FSOUND_SetPaused(channels[swordslicesound], FALSE);
+ PlaySoundEx( swordslicesound, samp[swordslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[swordslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[swordslicesound], 512);
+ OPENAL_SetPaused(channels[swordslicesound], false);
footvel=0;
if(skeleton.free){
footpoint=(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2*victim->scale+victim->coords;
}
if(!skeleton.free){
footpoint=DoRotation((victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2,0,victim->rotation,0)*victim->scale+victim->coords;
footvel=0;
if(skeleton.free){
footpoint=(victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2*victim->scale+victim->coords;
}
if(!skeleton.free){
footpoint=DoRotation((victim->skeleton.joints[victim->skeleton.jointlabels[abdomen]].position+victim->skeleton.joints[victim->skeleton.jointlabels[neck]].position)/2,0,victim->rotation,0)*victim->scale+victim->coords;
- }
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ }
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
- PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
- FSOUND_SetVolume(channels[swordstaffsound], 512);
- FSOUND_SetPaused(channels[swordstaffsound], FALSE);
+ PlaySoundEx( swordstaffsound, samp[swordstaffsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[swordstaffsound], gLoc, vel);
+ OPENAL_SetVolume(channels[swordstaffsound], 512);
+ OPENAL_SetPaused(channels[swordstaffsound], false);
- PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);
+ PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);
- /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[metalhitsound], 512);
- FSOUND_SetPaused(channels[metalhitsound], FALSE);*/
+ /*PlaySoundEx( metalhitsound, samp[metalhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[metalhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[metalhitsound], 512);
+ OPENAL_SetPaused(channels[metalhitsound], false);*/
- PlaySoundEx( staffheadsound, samp[staffheadsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[staffheadsound], gLoc, vel);
- FSOUND_SetVolume(channels[staffheadsound], 256);
- FSOUND_SetPaused(channels[staffheadsound], FALSE);
+ PlaySoundEx( staffheadsound, samp[staffheadsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[staffheadsound], gLoc, vel);
+ OPENAL_SetVolume(channels[staffheadsound], 256);
+ OPENAL_SetPaused(channels[staffheadsound], false);
- PlaySoundEx( staffheadsound, samp[staffheadsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[staffheadsound], gLoc, vel);
- FSOUND_SetVolume(channels[staffheadsound], 256);
- FSOUND_SetPaused(channels[staffheadsound], FALSE);
+ PlaySoundEx( staffheadsound, samp[staffheadsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[staffheadsound], gLoc, vel);
+ OPENAL_SetVolume(channels[staffheadsound], 256);
+ OPENAL_SetPaused(channels[staffheadsound], false);
- PlaySoundEx( staffbodysound, samp[staffbodysound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[staffbodysound], gLoc, vel);
- FSOUND_SetVolume(channels[staffbodysound], 256);
- FSOUND_SetPaused(channels[staffbodysound], FALSE);
+ PlaySoundEx( staffbodysound, samp[staffbodysound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[staffbodysound], gLoc, vel);
+ OPENAL_SetVolume(channels[staffbodysound], 256);
+ OPENAL_SetPaused(channels[staffbodysound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 128);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 128);
+ OPENAL_SetPaused(channels[landsound2], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 128);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 128);
+ OPENAL_SetPaused(channels[landsound2], false);
- PlaySoundEx( landsound2, samp[landsound2], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound2], gLoc, vel);
- FSOUND_SetVolume(channels[landsound2], 128);
- FSOUND_SetPaused(channels[landsound2], FALSE);
+ PlaySoundEx( landsound2, samp[landsound2], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound2], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound2], 128);
+ OPENAL_SetPaused(channels[landsound2], false);
if(animation[targetanimation].attack==reversal&&(!victim->feint||(victim->lastattack==victim->lastattack2&&victim->lastattack2==victim->lastattack3&&Random()%2)||targetanimation==knifefollowanim)){
if(targetanimation==spinkickreversalanim&&animation[targetanimation].label[currentframe]==7){
escapednum=0;
if(animation[targetanimation].attack==reversal&&(!victim->feint||(victim->lastattack==victim->lastattack2&&victim->lastattack2==victim->lastattack3&&Random()%2)||targetanimation==knifefollowanim)){
if(targetanimation==spinkickreversalanim&&animation[targetanimation].label[currentframe]==7){
escapednum=0;
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshhitsound], 128);
- FSOUND_SetPaused(channels[whooshhitsound], FALSE);
+ PlaySoundEx( whooshhitsound, samp[whooshhitsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whooshhitsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshhitsound], 128);
+ OPENAL_SetPaused(channels[whooshhitsound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifeslicesound], 512);
- FSOUND_SetPaused(channels[knifeslicesound], FALSE);
+ PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifeslicesound], 512);
+ OPENAL_SetPaused(channels[knifeslicesound], false);
if(bloodtoggle&&!weapons.bloody[weaponids[weaponactive]])weapons.bloody[weaponids[weaponactive]]=1;
weapons.blooddrip[weaponids[weaponactive]]+=3;
}
if(weaponactive==-1&&creature==wolftype){
if(bloodtoggle&&!weapons.bloody[weaponids[weaponactive]])weapons.bloody[weaponids[weaponactive]]=1;
weapons.blooddrip[weaponids[weaponactive]]+=3;
}
if(weaponactive==-1&&creature==wolftype){
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifeslicesound], 512);
- FSOUND_SetPaused(channels[knifeslicesound], FALSE);
+ PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifeslicesound], 512);
+ OPENAL_SetPaused(channels[knifeslicesound], false);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifeslicesound], 512);
- FSOUND_SetPaused(channels[knifeslicesound], FALSE);
+ PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifeslicesound], 512);
+ OPENAL_SetPaused(channels[knifeslicesound], false);
if(bloodtoggle)weapons.bloody[weaponids[weaponactive]]=2;
weapons.blooddrip[weaponids[weaponactive]]+=5;
}
if(creature==wolftype&&weaponactive==-1){
if(bloodtoggle)weapons.bloody[weaponids[weaponactive]]=2;
weapons.blooddrip[weaponids[weaponactive]]+=5;
}
if(creature==wolftype&&weaponactive==-1){
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- sprites.MakeSprite(bloodsprite, DoRotation(skeleton.joints[skeleton.jointlabels[neck]].position,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
+ Sprite::MakeSprite(bloodsprite, DoRotation(skeleton.joints[skeleton.jointlabels[neck]].position,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .2, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .2, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .2, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .2, 1);
- PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabsound], 512);
- FSOUND_SetPaused(channels[fleshstabsound], FALSE);
+ PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabsound], 512);
+ OPENAL_SetPaused(channels[fleshstabsound], false);
- PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabremovesound], 512);
- FSOUND_SetPaused(channels[fleshstabremovesound], FALSE);
+ PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabremovesound], 512);
+ OPENAL_SetPaused(channels[fleshstabremovesound], false);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,DoRotation(footvel*5,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .3, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,DoRotation(footvel*5,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .3, 1);
victim->DoBloodBig(200,180);
victim->DoBloodBig(200,215);
victim->bloodloss+=10000;
victim->DoBloodBig(200,180);
victim->DoBloodBig(200,215);
victim->bloodloss+=10000;
- PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabsound], 512);
- FSOUND_SetPaused(channels[fleshstabsound], FALSE);
+ PlaySoundEx( fleshstabsound, samp[fleshstabsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabsound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabsound], 512);
+ OPENAL_SetPaused(channels[fleshstabsound], false);
- PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
- FSOUND_SetVolume(channels[fleshstabremovesound], 512);
- FSOUND_SetPaused(channels[fleshstabremovesound], FALSE);
+ PlaySoundEx( fleshstabremovesound, samp[fleshstabremovesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[fleshstabremovesound], gLoc, vel);
+ OPENAL_SetVolume(channels[fleshstabremovesound], 512);
+ OPENAL_SetPaused(channels[fleshstabremovesound], false);
- if(bloodtoggle)sprites.MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
+ if(bloodtoggle)Sprite::MakeSprite(cloudimpactsprite, footpoint,footvel, 1,0,0, .9, .3);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
- sprites.MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*7,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodsprite,footpoint,DoRotation(footvel*3,(float)(Random()%20),(float)(Random()%20),0), 1,1,1, .05, .9);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*5, 1,1,1, .3, 1);
+ Sprite::MakeSprite(bloodflamesprite, footpoint,footvel*2, 1,1,1, .3, 1);
- PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
- FSOUND_SetVolume(channels[heavyimpactsound], 128);
- FSOUND_SetPaused(channels[heavyimpactsound], FALSE);
+ PlaySoundEx( heavyimpactsound, samp[heavyimpactsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[heavyimpactsound], gLoc, vel);
+ OPENAL_SetVolume(channels[heavyimpactsound], 128);
+ OPENAL_SetPaused(channels[heavyimpactsound], false);
- PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifeslicesound], 512);
- FSOUND_SetPaused(channels[knifeslicesound], FALSE);
+ PlaySoundEx( knifeslicesound, samp[knifeslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifeslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifeslicesound], 512);
+ OPENAL_SetPaused(channels[knifeslicesound], false);
- if(weaponactive==-1&&creature==wolftype){
- PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
- FSOUND_SetVolume(channels[clawslicesound], 128);
- FSOUND_SetPaused(channels[clawslicesound], FALSE);
+ if(weaponactive==-1&&creature==wolftype){
+ PlaySoundEx( clawslicesound, samp[clawslicesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[clawslicesound], gLoc, vel);
+ OPENAL_SetVolume(channels[clawslicesound], 128);
+ OPENAL_SetPaused(channels[clawslicesound], false);
- PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
- FSOUND_SetVolume(channels[movewhooshsound], 128);
- FSOUND_SetPaused(channels[movewhooshsound], FALSE);
+ PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
+ OPENAL_SetVolume(channels[movewhooshsound], 128);
+ OPENAL_SetPaused(channels[movewhooshsound], false);
- PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
- FSOUND_SetVolume(channels[knifesheathesound], 128);
- FSOUND_SetPaused(channels[knifesheathesound], FALSE);
+ PlaySoundEx( knifesheathesound, samp[knifesheathesound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifesheathesound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifesheathesound], 128);
+ OPENAL_SetPaused(channels[knifesheathesound], false);
- PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
- FSOUND_SetVolume(channels[knifedrawsound], 128);
- FSOUND_SetPaused(channels[knifedrawsound], FALSE);
+ PlaySoundEx( knifedrawsound, samp[knifedrawsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[knifedrawsound], gLoc, vel);
+ OPENAL_SetVolume(channels[knifedrawsound], 128);
+ OPENAL_SetPaused(channels[knifedrawsound], false);
- PlaySoundEx( landsound, samp[landsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound], gLoc, vel);
- FSOUND_SetVolume(channels[landsound], 128);
- FSOUND_SetPaused(channels[landsound], FALSE);
+ PlaySoundEx( landsound, samp[landsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound], 128);
+ OPENAL_SetPaused(channels[landsound], false);
- FSOUND_3D_SetAttributes(channels[whooshsound], gLoc, vel);
- FSOUND_SetVolume(channels[whooshsound], 64*findLength(&velocity)/5);
+ OPENAL_3D_SetAttributes(channels[whooshsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whooshsound], 64*findLength(&velocity)/5);
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity*scale/2;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity*scale/2;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
- sprites.MakeSprite(flamesprite, flatfacing,flatvelocity, 1,1,1, .6+(float)abs(Random()%100)/200-.25, 1);
+ Sprite::MakeSprite(flamesprite, flatfacing,flatvelocity, 1,1,1, .6+(float)abs(Random()%100)/200-.25, 1);
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity*scale/2;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
if(skeleton.free)flatvelocity=skeleton.joints[howmany].velocity*scale/2;
if(!skeleton.free)flatfacing=DoRotation(DoRotation(DoRotation(skeleton.joints[howmany].position,0,0,tilt),tilt2,0,0),0,rotation,0)*scale+coords;
if(skeleton.free)flatfacing=skeleton.joints[howmany].position*scale+coords;
- sprites.MakeSprite(breathsprite, flatfacing,flatvelocity, 1,1,1, .6+(float)abs(Random()%100)/200-.25, .3);
+ Sprite::MakeSprite(breathsprite, flatfacing,flatvelocity, 1,1,1, .6+(float)abs(Random()%100)/200-.25, .3);
}
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/40,rotation+((float)(Random()%100))/40,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/40,((float)(Random()%100))/40,0)*scale;
}
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[head]].velocity,((float)(Random()%100))/40,rotation+((float)(Random()%100))/40,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/40,((float)(Random()%100))/40,0)*scale;
- if(skeleton.free)sprites.MakeSprite(bloodsprite, (skeleton.joints[skeleton.jointlabels[neck]].position+(skeleton.joints[skeleton.jointlabels[neck]].position-skeleton.joints[skeleton.jointlabels[head]].position)/5)*scale+coords,bloodvel, 1,1,1, .05, .9);
- if(!skeleton.free)sprites.MakeSprite(bloodsprite, DoRotation(skeleton.joints[skeleton.jointlabels[neck]].position+(skeleton.joints[skeleton.jointlabels[neck]].position-skeleton.joints[skeleton.jointlabels[head]].position)/5,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, .9);
+ if(skeleton.free)Sprite::MakeSprite(bloodsprite, (skeleton.joints[skeleton.jointlabels[neck]].position+(skeleton.joints[skeleton.jointlabels[neck]].position-skeleton.joints[skeleton.jointlabels[head]].position)/5)*scale+coords,bloodvel, 1,1,1, .05, .9);
+ if(!skeleton.free)Sprite::MakeSprite(bloodsprite, DoRotation(skeleton.joints[skeleton.jointlabels[neck]].position+(skeleton.joints[skeleton.jointlabels[neck]].position-skeleton.joints[skeleton.jointlabels[head]].position)/5,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, .9);
bloodvel=0;
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[abdomen]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
bloodvel=0;
if(skeleton.free)bloodvel+=DoRotation(skeleton.joints[skeleton.jointlabels[abdomen]].velocity,((float)(Random()%100))/4,rotation+((float)(Random()%100))/4,0)*scale;
if(!skeleton.free)bloodvel+=DoRotation(velocity,((float)(Random()%100))/4,((float)(Random()%100))/4,0)*scale;
- if(skeleton.free)sprites.MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[abdomen]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
- if(!skeleton.free)sprites.MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[abdomen]].position+skeleton.joints[skeleton.jointlabels[abdomen]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
- }
+ if(skeleton.free)Sprite::MakeSprite(bloodsprite, skeleton.joints[skeleton.jointlabels[abdomen]].position*scale+coords,bloodvel, 1,1,1, .05, 1);
+ if(!skeleton.free)Sprite::MakeSprite(bloodsprite, DoRotation((skeleton.joints[skeleton.jointlabels[abdomen]].position+skeleton.joints[skeleton.jointlabels[abdomen]].position)/2,0,rotation,0)*scale+coords,bloodvel, 1,1,1, .05, 1);
+ }
bloodloss+=deathbleeding*multiplier*80;
deathbleeding-=multiplier*1.6;
//if(id==0)deathbleeding-=multiplier*.2;
bloodloss+=deathbleeding*multiplier*80;
deathbleeding-=multiplier*1.6;
//if(id==0)deathbleeding-=multiplier*.2;
if(endy>skeleton.skinsize-1){endy=skeleton.skinsize-1;bleeding=0;}
if(endx<startx)endx=startx;
if(endy<starty)endy=starty;
if(endy>skeleton.skinsize-1){endy=skeleton.skinsize-1;bleeding=0;}
if(endx<startx)endx=startx;
if(endy<starty)endy=starty;
if(!skeleton.free)footpoint=DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords;
if(skeleton.free)footpoint=((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2)*scale+coords;
if(targetanimation==sleepanim)footvel=DoRotation(footvel,0,90,0);
if(!skeleton.free)footpoint=DoRotation((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2,0,rotation,0)*scale+coords;
if(skeleton.free)footpoint=((skeleton.joints[skeleton.jointlabels[head]].position+skeleton.joints[skeleton.jointlabels[neck]].position)/2)*scale+coords;
if(targetanimation==sleepanim)footvel=DoRotation(footvel,0,90,0);
- sprites.MakeSprite(breathsprite, footpoint+footvel*.2,footvel*.4, 1,1,1, .4, .3);
+ Sprite::MakeSprite(breathsprite, footpoint+footvel*.2,footvel*.4, 1,1,1, .4, .3);
- PlaySoundEx( breaksound, samp[breaksound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[breaksound], gLoc, vel);
- FSOUND_SetVolume(channels[breaksound], 512);
- FSOUND_SetPaused(channels[breaksound], FALSE);
+ PlaySoundEx( breaksound, samp[breaksound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[breaksound], gLoc, vel);
+ OPENAL_SetVolume(channels[breaksound], 512);
+ OPENAL_SetPaused(channels[breaksound], false);
skeleton.longdead+=(2000-findLength(&average))*multiplier+multiplier;
if(skeleton.longdead>2000){
if(skeleton.longdead>6000){
skeleton.longdead+=(2000-findLength(&average))*multiplier+multiplier;
if(skeleton.longdead>2000){
if(skeleton.longdead>6000){
- if(objects.model[i].LineCheck(&colviewer,&coltarget,&colpoint,&objects.position[i],&objects.rotation[i])!=-1)canrecover=0;
+ if(objects.model[i].LineCheck(&colviewer,&coltarget,&colpoint,&objects.position[i],&objects.rotation[i])!=-1)canrecover=0;
if(findLength(&average)<10&&!dead&&skeleton.free){
skeleton.longdead+=(2000-findLength(&average))*multiplier+multiplier;
if(skeleton.longdead>(damage+500)*1.5){
if(findLength(&average)<10&&!dead&&skeleton.free){
skeleton.longdead+=(2000-findLength(&average))*multiplier+multiplier;
if(skeleton.longdead>(damage+500)*1.5){
- PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
- FSOUND_SetVolume(channels[movewhooshsound], 128);
- FSOUND_SetPaused(channels[movewhooshsound], FALSE);
+ PlaySoundEx( movewhooshsound, samp[movewhooshsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[movewhooshsound], gLoc, vel);
+ OPENAL_SetVolume(channels[movewhooshsound], 128);
+ OPENAL_SetPaused(channels[movewhooshsound], false);
- PlaySoundEx( firestartsound, samp[firestartsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[firestartsound], gLoc, vel);
- FSOUND_SetVolume(channels[firestartsound], 256);
- FSOUND_SetPaused(channels[firestartsound], FALSE);
+ PlaySoundEx( firestartsound, samp[firestartsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[firestartsound], gLoc, vel);
+ OPENAL_SetVolume(channels[firestartsound], 256);
+ OPENAL_SetPaused(channels[firestartsound], false);
- PlaySoundEx( firestartsound, samp[firestartsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[firestartsound], gLoc, vel);
- FSOUND_SetVolume(channels[firestartsound], 256);
- FSOUND_SetPaused(channels[firestartsound], FALSE);
+ PlaySoundEx( firestartsound, samp[firestartsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[firestartsound], gLoc, vel);
+ OPENAL_SetVolume(channels[firestartsound], 256);
+ OPENAL_SetPaused(channels[firestartsound], false);
- PlaySoundEx( bushrustle, samp[bushrustle], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[bushrustle], gLoc, vel);
- FSOUND_SetVolume(channels[bushrustle], 40*findLength(&velocity));
- FSOUND_SetPaused(channels[bushrustle], FALSE);
+ PlaySoundEx( bushrustle, samp[bushrustle], NULL, true);
+ OPENAL_3D_SetAttributes(channels[bushrustle], gLoc, vel);
+ OPENAL_SetVolume(channels[bushrustle], 40*findLength(&velocity));
+ OPENAL_SetPaused(channels[bushrustle], false);
pos.x+=float(abs(Random()%100)-50)/200;
pos.y+=float(abs(Random()%100)-50)/200;
pos.z+=float(abs(Random()%100)-50)/200;
pos.x+=float(abs(Random()%100)-50)/200;
pos.y+=float(abs(Random()%100)-50)/200;
pos.z+=float(abs(Random()%100)-50)/200;
- sprites.MakeSprite(splintersprite, pos,tempvel*.5+velocity*float(abs(Random()%100))/100, 165/255+float(abs(Random()%100)-50)/400,0,0, .2+float(abs(Random()%100)-50)/1300, 1);
- sprites.special[sprites.numsprites-1]=1;
+ Sprite::MakeSprite(splintersprite, pos,tempvel*.5+velocity*float(abs(Random()%100))/100, 165/255+float(abs(Random()%100)-50)/400,0,0, .2+float(abs(Random()%100)-50)/1300, 1);
+ Sprite::setLastSpriteSpecial(1);
pos.x+=float(abs(Random()%100)-50)/200;
pos.y+=float(abs(Random()%100)-50)/200;
pos.z+=float(abs(Random()%100)-50)/200;
pos.x+=float(abs(Random()%100)-50)/200;
pos.y+=float(abs(Random()%100)-50)/200;
pos.z+=float(abs(Random()%100)-50)/200;
- sprites.MakeSprite(splintersprite, pos,tempvel*.3+velocity*float(abs(Random()%100))/100/2, 1,1,1, .1, 1);
- sprites.special[sprites.numsprites-1]=2;
+ Sprite::MakeSprite(splintersprite, pos,tempvel*.3+velocity*float(abs(Random()%100))/100/2, 1,1,1, .1, 1);
+ Sprite::setLastSpriteSpecial(2);
tempcoord+=objects.position[i];
}
if(findDistancefastflat(&tempcoord,&objects.position[i])<objects.scale[i]*objects.scale[i]*8&&findDistancefast(&tempcoord,&objects.position[i])<objects.scale[i]*objects.scale[i]*300&&tempcoord.y>objects.position[i].y+3*objects.scale[i]){
tempcoord+=objects.position[i];
}
if(findDistancefastflat(&tempcoord,&objects.position[i])<objects.scale[i]*objects.scale[i]*8&&findDistancefast(&tempcoord,&objects.position[i])<objects.scale[i]*objects.scale[i]*300&&tempcoord.y>objects.position[i].y+3*objects.scale[i]){
- /*if(onfire){
- if(!objects.onfire[i]){
- float gLoc[3];
- float vel[3];
- gLoc[0]=objects.position[i].x;
- gLoc[1]=objects.position[i].y;
- gLoc[2]=objects.position[i].z;
- vel[0]=0;
- vel[1]=0;
- vel[2]=0;
- PlaySoundEx( firestartsound, samp[firestartsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[firestartsound], gLoc, vel);
- FSOUND_SetVolume(channels[firestartsound], 256);
- FSOUND_SetPaused(channels[firestartsound], FALSE);
- objects.onfire[i]=1;
- }
- }*/
- PlaySoundEx( bushrustle, samp[bushrustle], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[bushrustle], gLoc, vel);
- FSOUND_SetVolume(channels[bushrustle], 40*findLength(&velocity));
- FSOUND_SetPaused(channels[bushrustle], FALSE);
+ PlaySoundEx( bushrustle, samp[bushrustle], NULL, true);
+ OPENAL_3D_SetAttributes(channels[bushrustle], gLoc, vel);
+ OPENAL_SetVolume(channels[bushrustle], 40*findLength(&velocity));
+ OPENAL_SetPaused(channels[bushrustle], false);
pos.x+=float(abs(Random()%100)-50)/150;
pos.y+=float(abs(Random()%100)-50)/150;
pos.z+=float(abs(Random()%100)-50)/150;
pos.x+=float(abs(Random()%100)-50)/150;
pos.y+=float(abs(Random()%100)-50)/150;
pos.z+=float(abs(Random()%100)-50)/150;
- sprites.MakeSprite(splintersprite, pos,tempvel*.5+velocity*float(abs(Random()%100))/100, 165/255+float(abs(Random()%100)-50)/400,0,0, .2+float(abs(Random()%100)-50)/1300, 1);
- sprites.special[sprites.numsprites-1]=1;
+ Sprite::MakeSprite(splintersprite, pos,tempvel*.5+velocity*float(abs(Random()%100))/100, 165/255+float(abs(Random()%100)-50)/400,0,0, .2+float(abs(Random()%100)-50)/1300, 1);
+ Sprite::setLastSpriteSpecial(1);
pos.x+=float(abs(Random()%100)-50)/150;
pos.y+=float(abs(Random()%100)-50)/150;
pos.z+=float(abs(Random()%100)-50)/150;
pos.x+=float(abs(Random()%100)-50)/150;
pos.y+=float(abs(Random()%100)-50)/150;
pos.z+=float(abs(Random()%100)-50)/150;
- sprites.MakeSprite(splintersprite, pos,tempvel*.3+velocity*float(abs(Random()%100))/100/2, 1,1,1, .1, 1);
- sprites.special[sprites.numsprites-1]=2;
+ Sprite::MakeSprite(splintersprite, pos,tempvel*.3+velocity*float(abs(Random()%100))/100/2, 1,1,1, .1, 1);
+ Sprite::setLastSpriteSpecial(2);
- PlaySoundEx( whichsound, samp[whichsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[whichsound], gLoc, vel);
- FSOUND_SetVolume(channels[whichsound], 512);
- FSOUND_SetPaused(channels[whichsound], FALSE);
- }
- }
+ PlaySoundEx( whichsound, samp[whichsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[whichsound], gLoc, vel);
+ OPENAL_SetVolume(channels[whichsound], 512);
+ OPENAL_SetPaused(channels[whichsound], false);
+ }
+ }
//if(!creature==wolftype||targetanimation==rabbitkickanim)
if(targetanimation==rabbittackleanim){
velocity+=facing*multiplier*speed*700*scale;
//if(!creature==wolftype||targetanimation==rabbitkickanim)
if(targetanimation==rabbittackleanim){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}
if(targetanimation!=rabbitrunninganim&&targetanimation!=wolfrunninganim){
if(isRun()||targetanimation==rabbitkickanim){
velocity+=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}
if(targetanimation!=rabbitrunninganim&&targetanimation!=wolfrunninganim){
if(isRun()||targetanimation==rabbitkickanim){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
if(velspeed<speed*30*scale)velspeed=speed*30*scale;
velocity=flatfacing*velspeed;
}
}
else if(isRun()){
velocity+=facing*multiplier*speed*700*scale;
if(velspeed<speed*30*scale)velspeed=speed*30*scale;
velocity=flatfacing*velspeed;
}
}
else if(isRun()){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}*/
if(targetanimation==rollanim&&animation[targetanimation].label[targetframe]!=6){
velocity+=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}*/
if(targetanimation==rollanim&&animation[targetanimation].label[targetframe]!=6){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}
/*if(currentanimation==rollanim&&(isCrouch()||isIdle())){
velocity+=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}
/*if(currentanimation==rollanim&&(isCrouch()||isIdle())){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}*/
if(targetanimation==sneakanim||targetanimation==walkanim){
velocity+=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}*/
if(targetanimation==sneakanim||targetanimation==walkanim){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}
if((targetanimation==fightidleanim||targetanimation==knifefightidleanim)&&(currentanimation==bounceidleanim||currentanimation==hurtidleanim)){
velocity+=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}
if((targetanimation==fightidleanim||targetanimation==knifefightidleanim)&&(currentanimation==bounceidleanim||currentanimation==hurtidleanim)){
velocity+=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed;
}
if((targetanimation==bounceidleanim||currentanimation==hurtidleanim)&&(currentanimation==fightidleanim||currentanimation==knifefightidleanim)){
velocity-=facing*multiplier*speed*700*scale;
velocity=flatfacing*velspeed;
}
if((targetanimation==bounceidleanim||currentanimation==hurtidleanim)&&(currentanimation==fightidleanim||currentanimation==knifefightidleanim)){
velocity-=facing*multiplier*speed*700*scale;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed*-1;
}
if(targetanimation==fightsidestep){
velocity+=DoRotation(facing*multiplier*speed*700*scale,0,-90,0);
velocity=flatfacing*velspeed*-1;
}
if(targetanimation==fightsidestep){
velocity+=DoRotation(facing*multiplier*speed*700*scale,0,-90,0);
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
if(targetanimation==backhandspringanim){
//coords-=facing*multiplier*50*scale;
velocity+=facing*multiplier*speed*700*scale*-1;
if(targetanimation==backhandspringanim){
//coords-=facing*multiplier*50*scale;
velocity+=facing*multiplier*speed*700*scale*-1;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
velocity=flatfacing*velspeed*-1;
}
if(targetanimation==dodgebackanim){
//coords-=facing*multiplier*50*scale;
velocity+=facing*multiplier*speed*700*scale*-1;
velocity=flatfacing*velspeed*-1;
}
if(targetanimation==dodgebackanim){
//coords-=facing*multiplier*50*scale;
velocity+=facing*multiplier*speed*700*scale*-1;
- ReflectVector(&velocity,&terrain.getNormal(coords.x,coords.z));
- velspeed=findLength(&velocity);
+ ReflectVector(&velocity,terrain.getNormal(coords.x,coords.z));
+ velspeed=findLength(&velocity);
- FSOUND_SetPaused(channels[whooshsound], TRUE);
- FSOUND_SetVolume(channels[whooshsound], 0);
+ OPENAL_SetPaused(channels[whooshsound], true);
+ OPENAL_SetVolume(channels[whooshsound], 0);
- PlaySoundEx( landsound, samp[landsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound], gLoc, vel);
- FSOUND_SetVolume(channels[landsound], 128);
- FSOUND_SetPaused(channels[landsound], FALSE);
+ PlaySoundEx( landsound, samp[landsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound], 128);
+ OPENAL_SetPaused(channels[landsound], false);
- PlaySoundEx( skidsound, samp[skidsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[skidsound], gLoc, vel);
- FSOUND_SetVolume(channels[skidsound], 128*velspeed/10);
- FSOUND_SetPaused(channels[skidsound], FALSE);
+ PlaySoundEx( skidsound, samp[skidsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[skidsound], gLoc, vel);
+ OPENAL_SetVolume(channels[skidsound], 128*velspeed/10);
+ OPENAL_SetPaused(channels[skidsound], false);
- PlaySoundEx( snowskidsound, samp[snowskidsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[snowskidsound], gLoc, vel);
- FSOUND_SetVolume(channels[snowskidsound], 128*velspeed/10);
- FSOUND_SetPaused(channels[snowskidsound], FALSE);
+ PlaySoundEx( snowskidsound, samp[snowskidsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[snowskidsound], gLoc, vel);
+ OPENAL_SetVolume(channels[snowskidsound], 128*velspeed/10);
+ OPENAL_SetPaused(channels[snowskidsound], false);
- if((frustum.SphereInFrustum(coords.x,coords.y+scale*3,coords.z,scale*8)&&findDistancefast(&viewer,&coords)<viewdistance*viewdistance)||skeleton.free==3){
+ if((frustum.SphereInFrustum(coords.x,coords.y+scale*3,coords.z,scale*8)&&findDistancefast(&viewer,&coords)<viewdistance*viewdistance)||skeleton.free==3){
if(weapons.type[i]!=staff){
for(j=0;j<skeleton.num_muscles;j++){
if((skeleton.muscles[j].parent1->label==righthand||skeleton.muscles[j].parent2->label==righthand)&&skeleton.muscles[j].numvertices>0){
if(weapons.type[i]!=staff){
for(j=0;j<skeleton.num_muscles;j++){
if((skeleton.muscles[j].parent1->label==righthand||skeleton.muscles[j].parent2->label==righthand)&&skeleton.muscles[j].numvertices>0){
if(weapons.type[i]==knife)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[righthip]].position-skeleton.joints[skeleton.jointlabels[lefthip]].position)*.1+(skeleton.joints[skeleton.jointlabels[rightshoulder]].position-skeleton.joints[skeleton.jointlabels[leftshoulder]].position)*.35;
if(weapons.type[i]==sword)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[lefthip]].position-skeleton.joints[skeleton.jointlabels[righthip]].position)*.09+(skeleton.joints[skeleton.jointlabels[leftshoulder]].position-skeleton.joints[skeleton.jointlabels[rightshoulder]].position)*.33;
if(weapons.type[i]==staff)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[lefthip]].position-skeleton.joints[skeleton.jointlabels[righthip]].position)*.09+(skeleton.joints[skeleton.jointlabels[leftshoulder]].position-skeleton.joints[skeleton.jointlabels[rightshoulder]].position)*.33;
if(weapons.type[i]==knife)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[righthip]].position-skeleton.joints[skeleton.jointlabels[lefthip]].position)*.1+(skeleton.joints[skeleton.jointlabels[rightshoulder]].position-skeleton.joints[skeleton.jointlabels[leftshoulder]].position)*.35;
if(weapons.type[i]==sword)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[lefthip]].position-skeleton.joints[skeleton.jointlabels[righthip]].position)*.09+(skeleton.joints[skeleton.jointlabels[leftshoulder]].position-skeleton.joints[skeleton.jointlabels[rightshoulder]].position)*.33;
if(weapons.type[i]==staff)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position+(skeleton.joints[skeleton.jointlabels[lefthip]].position-skeleton.joints[skeleton.jointlabels[righthip]].position)*.09+(skeleton.joints[skeleton.jointlabels[leftshoulder]].position-skeleton.joints[skeleton.jointlabels[rightshoulder]].position)*.33;
if(weaponstuckwhere==0)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position*.5+skeleton.joints[skeleton.jointlabels[neck]].position*.5-skeleton.forward*.8;
else weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position*.5+skeleton.joints[skeleton.jointlabels[neck]].position*.5+skeleton.forward*.8;
for(j=0;j<skeleton.num_muscles;j++){
if(weaponstuckwhere==0)weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position*.5+skeleton.joints[skeleton.jointlabels[neck]].position*.5-skeleton.forward*.8;
else weaponpoint=skeleton.joints[skeleton.jointlabels[abdomen]].position*.5+skeleton.joints[skeleton.jointlabels[neck]].position*.5+skeleton.forward*.8;
for(j=0;j<skeleton.num_muscles;j++){
}
if((currentanimation==knifeslashreversalanim&&targetanimation==knifeslashreversalanim)||(currentanimation==knifeslashreversedanim&&targetanimation==knifeslashreversedanim)){
XYZ temppoint1,temppoint2,tempforward;
}
if((currentanimation==knifeslashreversalanim&&targetanimation==knifeslashreversalanim)||(currentanimation==knifeslashreversedanim&&targetanimation==knifeslashreversedanim)){
XYZ temppoint1,temppoint2,tempforward;
- FSOUND_SetPaused(channels[whooshsound], TRUE);
- FSOUND_SetVolume(channels[whooshsound], 0);
+ OPENAL_SetPaused(channels[whooshsound], true);
+ OPENAL_SetVolume(channels[whooshsound], 0);
- PlaySoundEx( landsound, samp[landsound], NULL, TRUE);
- FSOUND_3D_SetAttributes(channels[landsound], gLoc, vel);
- FSOUND_SetVolume(channels[landsound], 128);
- FSOUND_SetPaused(channels[landsound], FALSE);
+ PlaySoundEx( landsound, samp[landsound], NULL, true);
+ OPENAL_3D_SetAttributes(channels[landsound], gLoc, vel);
+ OPENAL_SetVolume(channels[landsound], 128);
+ OPENAL_SetPaused(channels[landsound], false);