System: new brake system
This commit is contained in:
parent
89c790d75b
commit
a0f3a096b3
|
@ -347,13 +347,79 @@ var IndicatorController = {
|
|||
|
||||
var indicatorController = IndicatorController.new();
|
||||
|
||||
var BrakeController = {
|
||||
new: func() { return { parents:[BrakeController]}; },
|
||||
leftBrakeNode: props.getNode("/controls/gear/brake-left",1),
|
||||
rightBrakeNode: props.getNode("/controls/gear/brake-right",1),
|
||||
parkingBrakeNode: props.getNode("/controls/gear/brake-parking",1),
|
||||
|
||||
handBrakeIsOn: 0,
|
||||
leftBrakeValue: 0,
|
||||
rightBrakeValue: 0,
|
||||
|
||||
applyLeftBrake: func(value){
|
||||
me.leftBrakeNode.setValue(value);
|
||||
me.leftBrakeValue = value;
|
||||
},
|
||||
applyRightBrake: func(value){
|
||||
me.rightBrakeNode.setValue(value);
|
||||
me.rightBrakeValue = value;
|
||||
},
|
||||
applyBrakes: func(value){
|
||||
me.rightBrakeNode.setValue(value);
|
||||
me.rightBrakeValue = value;
|
||||
me.leftBrakeNode.setValue(value);
|
||||
me.leftBrakeValue = value;
|
||||
},
|
||||
|
||||
enableHandBrake: func(){
|
||||
me.parkingBrakeNode.setValue(1);
|
||||
me.handBrakeIsOn = 1;
|
||||
},
|
||||
disableHandBrake: func(){
|
||||
me.parkingBrakeNode.setValue(0);
|
||||
me.handBrakeIsOn = 0;
|
||||
},
|
||||
toggleHandBrake: func(){
|
||||
if(isInternalView()) playAudio("electric_handbrake.wav");
|
||||
if(!me.handBrakeIsOn){
|
||||
me.enableHandBrake();
|
||||
}else{
|
||||
me.disableHandBrake();
|
||||
}
|
||||
},
|
||||
activeEmergencyBrake: func(){
|
||||
me.applyLeftBrake(1);
|
||||
me.applyRightBrake(1);
|
||||
me.enableHandBrake();
|
||||
safety.emergencyMode();
|
||||
},
|
||||
keyboardBrake: func(){
|
||||
me.applyBrakes(0.8);
|
||||
},
|
||||
keyboardBrakeRelease: func(){
|
||||
me.applyBrakes(0);
|
||||
},
|
||||
releaseBrake: func(){
|
||||
me.applyLeftBrake(0);
|
||||
me.applyRightBrake(0);
|
||||
},
|
||||
releaseAllBrakes: func(){
|
||||
me.applyLeftBrake(0);
|
||||
me.applyRightBrake(0);
|
||||
me.disableHandBrake();
|
||||
},
|
||||
};
|
||||
|
||||
var brakeController = BrakeController.new();
|
||||
|
||||
var toggleHandBrake = func(){
|
||||
#//Depreciated as BrakeController has it internally now
|
||||
if(isInternalView()) playAudio("electric_handbrake.wav");
|
||||
var handBrake = props.getNode("/controls/gear/brake-parking", 1);
|
||||
if(!handBrake.getValue()){
|
||||
handBrake.setValue(1);
|
||||
if(!brakeController.handBrakeIsOn){
|
||||
brakeController.enableHandBrake();
|
||||
}else{
|
||||
handBrake.setValue(0);
|
||||
brakeController.disableHandBrake();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -536,9 +602,7 @@ var Safety = {
|
|||
me.aebActivated = 1;
|
||||
#engine.engine_1.engineSwitch.switchDisconnect();
|
||||
me.throttleNode.setValue(0);
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-left", 1);
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-right", 1);
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-parking", 1);
|
||||
brakeController.activeEmergencyBrake();
|
||||
playAudio("parking_radar_init.wav");
|
||||
print("AEB Activated!");
|
||||
},
|
||||
|
@ -546,9 +610,7 @@ var Safety = {
|
|||
me.aebActivated = 0;
|
||||
print("AEB Stopped");
|
||||
#engine.engine_1.engineSwitch.switchConnect();
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-left", 0);
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-right", 0);
|
||||
props.getNode("/",1).setValue("/controls/gear/brake-parking", 0);
|
||||
brakeController.releaseAllBrakes();
|
||||
},
|
||||
|
||||
update: func(){
|
||||
|
@ -577,7 +639,6 @@ var Safety = {
|
|||
me.frontRadar.init();
|
||||
if(me.frontRadar.radarOutput <= 8 and reletiveSpeed > 30 and !me.aebActivated){
|
||||
me.aebActive();
|
||||
me.emergencyMode();
|
||||
}else if((me.frontRadar.radarOutput >= 8 or reletiveSpeed <= 0) and me.aebActivated){
|
||||
me.aebStop();
|
||||
}
|
||||
|
|
|
@ -681,25 +681,13 @@
|
|||
<desc>break</desc>
|
||||
<repeatable>false</repeatable>
|
||||
<binding>
|
||||
<command>property-assign</command>
|
||||
<property>/controls/gear/brake-left</property>
|
||||
<value>1</value>
|
||||
</binding>
|
||||
<binding>
|
||||
<command>property-assign</command>
|
||||
<property>/controls/gear/brake-right</property>
|
||||
<value>1</value>
|
||||
<command>nasal</command>
|
||||
<script>followme.brakeController.keyboardBrake();</script>
|
||||
</binding>
|
||||
<mod-up>
|
||||
<binding>
|
||||
<command>property-assign</command>
|
||||
<property>/controls/gear/brake-left</property>
|
||||
<value>0</value>
|
||||
</binding>
|
||||
<binding>
|
||||
<command>property-assign</command>
|
||||
<property>/controls/gear/brake-right</property>
|
||||
<value>0</value>
|
||||
<command>nasal</command>
|
||||
<script>followme.brakeController.keyboardBrakeRelease();</script>
|
||||
</binding>
|
||||
</mod-up>
|
||||
</key>
|
||||
|
@ -829,7 +817,7 @@
|
|||
<desc>handbrake</desc>
|
||||
<binding>
|
||||
<command>nasal</command>
|
||||
<script>followme.toggleHandBrake();</script>
|
||||
<script>followme.brakeController.toggleHandBrake();</script>
|
||||
</binding>
|
||||
</key>
|
||||
</keyboard>
|
||||
|
|
Loading…
Reference in New Issue