1
0
mirror of https://github.com/XProger/OpenLara.git synced 2025-08-17 18:36:43 +02:00

Merge remote-tracking branch 'refs/remotes/XProger/master'

This commit is contained in:
Gh0stBlade
2017-05-16 01:56:02 +01:00
3 changed files with 36 additions and 12 deletions

View File

@@ -2209,9 +2209,7 @@ struct Lara : Character {
break; break;
case STAND_GROUND : case STAND_GROUND :
case STAND_HANG : case STAND_HANG :
if (stand == STAND_GROUND && state != STATE_ROLL_1 && state != STATE_ROLL_2 && (pos - opos).length2() < 16) if (opos.y - floor > (256 * 3 - 128) && state == STATE_RUN)
animation.setAnim(ANIM_STAND_NORMAL);
else if (opos.y - floor > (256 * 3 - 128) && state == STATE_RUN)
animation.setAnim(isLeftFoot ? ANIM_SMASH_RUN_LEFT : ANIM_SMASH_RUN_RIGHT); animation.setAnim(isLeftFoot ? ANIM_SMASH_RUN_LEFT : ANIM_SMASH_RUN_RIGHT);
else if (stand == STAND_HANG) else if (stand == STAND_HANG)
animation.setAnim(ANIM_HANG, -21); animation.setAnim(ANIM_HANG, -21);

View File

@@ -44,6 +44,8 @@
#ifdef _MSC_VER #ifdef _MSC_VER
typedef unsigned __int64 uint64_t; typedef unsigned __int64 uint64_t;
typedef signed __int64 int64_t; typedef signed __int64 int64_t;
#elif defined(__x86_64__) && defined(__linux__)
#include <sys/types.h>
#else #else
typedef unsigned long long uint64_t; typedef unsigned long long uint64_t;
typedef signed long long int64_t; typedef signed long long int64_t;

View File

@@ -194,10 +194,22 @@ class Sound {
int rate = 44100; int rate = 44100;
int size = AudioTrack.getMinBufferSize(rate, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT); int size = AudioTrack.getMinBufferSize(rate, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT);
//System.out.println(String.format("sound buffer size: %d", bufSize)); //System.out.println(String.format("sound buffer size: %d", bufSize));
buffer = new short [size / 2]; buffer = new short[size / 2];
audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO,
AudioFormat.ENCODING_PCM_16BIT, size, AudioTrack.MODE_STREAM); try {
audioTrack.play(); audioTrack = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, AudioFormat.CHANNEL_OUT_STEREO,
AudioFormat.ENCODING_PCM_16BIT, size, AudioTrack.MODE_STREAM);
}catch (IllegalArgumentException e){
System.out.println("Error: buffer size is zero");
return;
}
try {
audioTrack.play();
}catch (NullPointerException e){
System.out.println("Error: audioTrack null pointer on start()");
return;
}
new Thread( new Runnable() { new Thread( new Runnable() {
public void run() { public void run() {
@@ -220,17 +232,29 @@ class Sound {
} }
void stop() { void stop() {
audioTrack.flush(); try {
audioTrack.stop(); audioTrack.flush();
audioTrack.release(); audioTrack.stop();
audioTrack.release();
}catch (NullPointerException e){
System.out.println("Error: audioTrack null pointer on stop()");
}
} }
void play() { void play() {
audioTrack.play(); try {
audioTrack.play();
}catch (NullPointerException e){
System.out.println("Error: audioTrack null pointer on play()");
}
} }
void pause() { void pause() {
audioTrack.pause(); try {
audioTrack.pause();
}catch (NullPointerException e){
System.out.println("Error: audioTrack null pointer on pause()");
};
} }
} }