# marcus915 :
Yes, can do.
package java.game;
import java.io. *;
import java.util. *;
import java.util.resource. *;
import java.game. *;
import java.render. *; // Text
import java.render.osd. *; // Text
import java.sound. *;
import java.render.osd.dialog. *; // Dialog Window
import java.game.parts. *;
import java.game.parts.enginepart. *;
public class Cooldown_map extends Track
{
final static String MapName = "Cooldown";
final static String MapDescription = "Fucking amazing!!! \n \n Bots: cooldown1 to cooldown10";
final static String MapAuthor = "Lexotic/Cooldown";
final static ResourceRef MapImage = new ResourceRef(Maps.Addon_Maps.Cooldown_map: 0x0005r); // map picture
final static float TS_Version = 1.0; // do not touch! : D
final static int RivalOption = 0;
int defaultCar = cars.racers: 0x0000r; // se não existir o save do carro ficará sem carro no lugar
Bot raceBot1;
Vector3 raceBot1_posStart;
Ypr raceBot1_oriStart;
Bot raceBot2;
Vector3 raceBot2_posStart;
Ypr raceBot2_oriStart;
Bot raceBot3;
Vector3 raceBot3_posStart;
Ypr raceBot3_oriStart;
Bot raceBot4;
Vector3 raceBot4_posStart;
Ypr raceBot4_oriStart;
Bot raceBot5;
Vector3 raceBot5_posStart;
Ypr raceBot5_oriStart;
Bot raceBot6;
Vector3 raceBot6_posStart;
Ypr raceBot6_oriStart;
Bot raceBot7;
Vector3 raceBot7_posStart;
Ypr raceBot7_oriStart;
Bot raceBot8;
Vector3 raceBot8_posStart;
Ypr raceBot8_oriStart;
Bot raceBot9;
Vector3 raceBot9_posStart;
Ypr raceBot9_oriStart;
Bot raceBot10;
Vector3 raceBot10_posStart;
Ypr raceBot10_oriStart;
public Cooldown_map()
{
posStart = new Vector3(-19.206, -9.683, -15.888); // The position of your car
oriStart = new Ypr(0.000, 0.000, 0.000); // Rotation of your car
if(RivalOption == 1)
{
raceBot1_posStart = new Vector3(-5.843, -9.683, -13.564); // The position of the car number 1
raceBot1_oriStart = new Ypr(0.000, 0.000, 0.000); // Car rotation number 1
raceBot2_posStart = new Vector3(-7.987, -9.683, -13.564); // The position of the car number 2
raceBot2_oriStart = new Ypr(0.000, 0.000, 0.000); // Car rotation number 2
raceBot3_posStart = new Vector3(-2.858, -9.683, -14.972); // Position of the car number 3
raceBot3_oriStart = new Ypr(0.000, 0.000, 0.000); // Car rotation number 3
raceBot4_posStart = new Vector3(-11.817, -9.683, -15.206); // The position of the car number 4
raceBot4_oriStart = new Ypr(0.000, 0.000, 0.000); // Car rotation number 4
raceBot5_posStart = new Vector3(-14.491, -9.683, -15.206); // The position of the car number 5
raceBot5_oriStart = new Ypr(0.000, 0.000, 0.000); // Car rotation number 5
raceBot6_posStart = new Vector3(5.614, -9.683, -22.354); // Position of the car number 6
raceBot6_oriStart = new Ypr(1.571, 0.000, 0.000); // Car rotation number 6
raceBot7_posStart = new Vector3(2.507, -9.683, -17.321); // Position of the car number 7
raceBot7_oriStart = new Ypr(0.785, 0.000, 0.000); // Car rotation number 7
raceBot8_posStart = new Vector3(-1.775, -9.683, -42.522); // Position of the car number 8
raceBot8_oriStart = new Ypr(1.571, 0.000, 0.000); // Car rotation number 8
raceBot9_posStart = new Vector3(3.352, -9.683, -42.522); // Position of the car number 9
raceBot9_oriStart = new Ypr(1.571, 0.000, 0.000); // Car rotation number 9
raceBot10_posStart = new Vector3(8.316, -9.683, -42.522); // Position of the car number 10
raceBot10_oriStart = new Ypr(1.571, 0.000, 0.000); // Car rotation number 10
}
map = new GroundRef(Maps.Addon_Maps.Cooldown_map: 0x00000001r);
}
public void StartMap()
{
new Cooldown_map_Options(). display();
}
public void enter(GameState prev_state)
{
Frontend.loadingScreen.show(new ResourceRef(Maps.Addon_Maps.Cooldown_map:0x0005r));
GfxEngine.flush();
super.enter(prev_state);
if(RivalOption == 1)
{
raceBot1 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot2 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot3 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot4 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot5 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot6 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot7 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot8 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot9 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
raceBot10 = new Bot(Math.random() * 59, 3, 1, 2.0, 2.0, 20.0);
if(File.exists(GameLogic.carSaveDir + "cooldown1"))
raceBot1.createCar(map, GameLogic.carSaveDir + "cooldown1");
else
raceBot1.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown2"))
raceBot2.createCar(map, GameLogic.carSaveDir + "cooldown2");
else
raceBot2.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown3"))
raceBot3.createCar(map, GameLogic.carSaveDir + "cooldown3");
else
raceBot3.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown4"))
raceBot4.createCar(map, GameLogic.carSaveDir + "cooldown4");
else
raceBot4.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown5"))
raceBot5.createCar(map, GameLogic.carSaveDir + "cooldown5");
else
raceBot5.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown6"))
raceBot6.createCar(map, GameLogic.carSaveDir + "cooldown6");
else
raceBot6.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown7"))
raceBot7.createCar(map, GameLogic.carSaveDir + "cooldown7");
else
raceBot7.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown8"))
raceBot8.createCar(map, GameLogic.carSaveDir + "cooldown8");
else
raceBot8.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown9"))
raceBot9.createCar(map, GameLogic.carSaveDir + "cooldown9");
else
raceBot9.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
if(File.exists(GameLogic.carSaveDir + "cooldown10"))
raceBot10.createCar(map, GameLogic.carSaveDir + "cooldown10");
else
raceBot10.createCar(map, new Vehicle(map, defaultCar, 1.0, 1.0, 1.0, 1.0, 1.0));
raceBot1.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot1.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot1.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot1.car.setMatrix(raceBot1_posStart, raceBot1_oriStart);
raceBot1.car.setParent(map);
raceBot1.car.wakeUp();
raceBot1.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot1.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot2.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot2.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot2.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot2.car.setMatrix(raceBot2_posStart, raceBot2_oriStart);
raceBot2.car.setParent(map);
raceBot2.car.wakeUp();
raceBot2.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot2.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot3.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot3.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot3.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot3.car.setMatrix(raceBot3_posStart, raceBot3_oriStart);
raceBot3.car.setParent(map);
raceBot3.car.wakeUp();
raceBot3.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot3.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot4.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot4.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot4.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot4.car.setMatrix(raceBot4_posStart, raceBot4_oriStart);
raceBot4.car.setParent(map);
raceBot4.car.wakeUp();
raceBot4.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot4.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot5.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot5.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot5.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot5.car.setMatrix(raceBot5_posStart, raceBot5_oriStart);
raceBot5.car.setParent(map);
raceBot5.car.wakeUp();
raceBot5.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot5.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot6.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot6.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot6.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot6.car.setMatrix(raceBot6_posStart, raceBot6_oriStart);
raceBot6.car.setParent(map);
raceBot6.car.wakeUp();
raceBot6.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot6.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot7.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot7.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot7.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot7.car.setMatrix(raceBot7_posStart, raceBot7_oriStart);
raceBot7.car.setParent(map);
raceBot7.car.wakeUp();
raceBot7.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot7.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot8.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot8.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot8.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot8.car.setMatrix(raceBot8_posStart, raceBot8_oriStart);
raceBot8.car.setParent(map);
raceBot8.car.wakeUp();
raceBot8.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot8.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot9.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot9.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot9.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot9.car.setMatrix(raceBot9_posStart, raceBot9_oriStart);
raceBot9.car.setParent(map);
raceBot9.car.wakeUp();
raceBot9.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot9.car.queueEvent(null, EVENT_COMMAND, "set");
raceBot10.brain.queueEvent(null, EVENT_COMMAND, "AI_params 15.5 2.5");
raceBot10.car.queueEvent(null, EVENT_COMMAND, "reset");
raceBot10.car.queueEvent(null, EVENT_COMMAND, "reload");
raceBot10.car.setMatrix(raceBot10_posStart, raceBot10_oriStart);
raceBot10.car.setParent(map);
raceBot10.car.wakeUp();
raceBot10.car.queueEvent(null, EVENT_COMMAND, "brake");
raceBot10.car.queueEvent(null, EVENT_COMMAND, "set");
}
}
public void exit(GameState next_state)
{
super.exit(next_state);
}
}
public class Cooldown_map_Options extends Dialog
{
final static int CMD_BACK = 15;
final static int CMD_OK = 16;
final static int CMD_GAMEMODE = 20;
final static int CMD_GAMEMODE2 = 21;
Menu m;
Style Menu_Center, Menu_Left;
int CurrentMode;
int CurrentMode2;
Button opt1;
Button opt2;
public Cooldown_map_Options()
{
super( GameLogic.player.controller, DF_MODAL|DF_FULLSCREEN|DF_HIGHPRI|DF_DARKEN, "TRACK OPTIONS", "" );
Menu_Center = new Style( 0.40, 0.13, Frontend.mediumFont, Text.ALIGN_CENTER, Osd.RRT_TEST );
Menu_Left = new Style( 0.40, 0.13, Frontend.mediumFont, Text.ALIGN_LEFT, Osd.RRT_TEST );
osd.createBG( new ResourceRef(Maps.Addon_Maps.Cooldown_map:0x0005r) );
m = osd.createMenu( Menu_Left, -0.1, -0.6, 0, Osd.MD_VERTICAL );
opt1 = m.addItem( "ON", CMD_GAMEMODE, null );
opt2 = m.addItem( "Set Time", CMD_GAMEMODE2, null );
osd.createText( "Bots:" , Frontend.mediumFont, Text.ALIGN_RIGHT, -0.10, -0.62 );
osd.createText( "Time:" , Frontend.mediumFont, Text.ALIGN_RIGHT, -0.10, -0.49 );
CurrentMode = 1;
Cooldown_map.RivalOption = 1;
CurrentMode2 = 0;
m = osd.createMenu( Menu_Center, -0.4, 0.9, 0, Osd.MD_HORIZONTAL );
m.addItem( "OK", CMD_OK );
m = osd.createMenu( Menu_Center, 0.4, 0.9, 0, Osd.MD_HORIZONTAL );
m.addItem( "BACK", CMD_BACK );
super.show();
}
public void osdCommand( int cmd )
{
if( cmd == CMD_GAMEMODE )
{
if( CurrentMode == 0 )
{
Cooldown_map.RivalOption = 1;
opt1.changeLabelText( "ON" );
CurrentMode = 1;
}
else
if( CurrentMode == 1 )
{
Cooldown_map.RivalOption = 2;
opt1.changeLabelText( "OFF" );
CurrentMode = 0;
}
}
else
if( cmd == CMD_GAMEMODE2 )
{
if( CurrentMode2 == 0 )
{
opt2.changeLabelText( "Midday" );
CurrentMode2 = 1;
GameLogic.setTime( 12*3600 );
}
else
if( CurrentMode2 == 1 )
{
opt2.changeLabelText( "Evening" );
CurrentMode2 = 2;
GameLogic.setTime( 19.5*3600 );
}
else
if( CurrentMode2 == 2 )
{
opt2.changeLabelText( "Midnight" );
CurrentMode2 = 3;
GameLogic.setTime( 24*3600 );
}
else
if( CurrentMode2 == 3 )
{
opt2.changeLabelText( "Morning" );
CurrentMode2 = 0;
GameLogic.setTime( 8*3600 );
}
}
else
if( cmd == CMD_BACK )
{
osd.hide();
super.hide();
}
else
if( cmd == CMD_OK )
{
osd.hide();
super.hide();
GameLogic.changeActiveSection( new Cooldown_map() );
}
}
}
# marcus915 :
!Script error
Thread: THRD-RUNVMI Dummy.handleEvent
Error: Thread::callMethod: "Ljava.game.Cooldown_map_Options;opt5 (Ljava.lang.String;) " not found
java.game.Cooldown_map_Options:osdCommand (line:381)
java.render.osd.Gadget:sendMessage (line:211)
java.render.osd.Button:click (line:31)
java.render.Group:handleEvent (line:178)
It is obviously looking for opt5, for some reason, as i could see there's no opt5 in your java so i really have no clue what's going on. Are you sure that's the java you were using when that happened?
Added 51 seconds later:
# skip :
I'm having problems with 3DS Max.
When I'm importing a 3ds file of the map I'm making I'm getting a 3dsimp error, causes it to force close too. Happens with every file. The said file opens in 2009 so if there is any way to get Invictus export plugins into 2009 it would be better.
Any help?
It's in the download area, tools section, comes together with the TrackWizard 2.0