Quantcast

Jump to content

» «
Photo

MISSION CODING 3 - for all post beta code

  • This topic is locked This topic is locked
400 replies to this topic
Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#1

Posted 01 June 2004 - 08:04 PM Edited by Craig Kostelecky, 11 November 2004 - 11:19 PM.

This is the location where we will discuss and release updates to the mission code. Any questions related to the code should be posted here. This section is for official code only. So any code additions would go in the unofficial mods section.

The latest code files can always be downloaded link removed until the gamma release .

These missions require some audio files as well. They can be found on your GTA3 CD, or you can download them here.

Here are the missions that are currently coded:
Mission 0 Setup
Mission 1 Hospital Help
Mission 2 Police Help

Mission 3 Diablo Destruction
Mission 4 Mafia Massacre
Mission 5 Rumpo Rampage
Mission 6 Casino Calamity

Mission 7 Patriot Playground
Mission 8 A Ride in the Park
Mission 9 Gripped!
Mission 10 Multistory Mayhem

Mission 11 Paramedic sub-mission
Mission 12 Firefighter sub-mission
Mission 13 Vigilante sub-mission
Mission 14 Taxi sub-mission

Mission 15 The Crook
Mission 16 The Thieves
Mission 17 The Wife
Mission 18 Her Lover

Mission 40 Turismo
Mission 41 I Scream, You Scream
Mission 42 Trial By Fire

Mission 63 Bling-Bling Scramble
Mission 64 Uzi Rider
Mission 65 Gangcar Roundup
Mission 66 Kingdom Come

Mission 74 Uzi Money
Mission 75 Toyminator
Mission 76 Rigged to Blow
Mission 78 Rumble

These missions are currently being worked on:
Mission 19 Give Me Liberty/Luigi's Girls
Mission 43 Big 'N' Veiny
Mission 77 Bullion Run

TbM2k
  • TbM2k

    playing/modding gta:SA

  • Members
  • Joined: 25 Feb 2003

#2

Posted 01 June 2004 - 08:21 PM

It's an old bug of gtama, i commented the "start_mission &HOOD3" out, and there are now 2 labels that gtama compiles, but it forgets to merge them, so there is a missing label in the final main.scm that crashes the engine (the threads aren't called, so this shouldn't happen)

You tried the right phone? Island 3, drive from you hideout down in direction of the airport (without using the bridge), at a T-Crossing there are 4 Phones and the leftmost should ring... (at least here it does)

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#3

Posted 01 June 2004 - 08:51 PM

I was using the wrong phone. But I've found another problem. After my first clip of ammo runs out, I can no longer shoot the gun. The gun's still in my hands and it still animates, but no bullets come out. This happened both times I tried to play the mission.

EDIT/Theory: do you have the most recent weapons.dat file. That may be what's causing it.

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#4

Posted 01 June 2004 - 09:53 PM

Well I just updated the topic about the Import garages here.
It now completely works exept for the part with the tick lines on the board and there is still a small bug in it.
I have not updated the Exporter in any way yet so that is still a very primitive version and can be found elswhere in that topic.

I think that is the last update for today. It's 0:00 here and I need some sleep. Tomorrow I will (hopefully) fix the bug in the Importer and update the Exporter.

INH
  • INH

    Lead Coder for Freelance

  • Members
  • Joined: 04 Jul 2003

#5

Posted 02 June 2004 - 02:54 AM

Just for the fun.....

CODE

:BleedCheck
0001: wait  0? ms
00D6: if  0?
0256:   player $PLAYER_CHAR defined
004D: jump_if_false ££BleedCheck
00D6: if  1?
8118:   NOT   actor $PLAYER_ACTOR dead
8183:   NOT   player $PLAYER_CHAR health >  35?
004D: jump_if_false ££NotBleeding  
0332: set_actor $PLAYER_ACTOR bleeding_to  1? (true)
052C: set_player $PLAYER_CHAR drunk_visuals  255&
00D6: if  1?
8118:   NOT   actor $PLAYER_ACTOR dead
8183:   NOT   player $PLAYER_CHAR health >  15?
004D: jump_if_false ££BleedCheck
015D: set_gamespeed  .4!
0001: wait  0? ms
0002: jump ££BleedCheck

:NotBleeding
0001: wait  0? ms
015D: set_gamespeed  1?
0332: set_actor $PLAYER_ACTOR bleeding_to  0? (false)
052C: set_player $PLAYER_CHAR drunk_visuals  0?
0002: jump ££BleedCheck


Sooner or later, I plan on adding code that has the player health continually drop after either 35 or 15, to simulate the effects of blood loss.

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#6

Posted 02 June 2004 - 02:56 AM

Just a note that this thread is for official mission coding. If it wasn't in GTAIII, then it should still be posted in the unofficial mods thread.

TbM2k
  • TbM2k

    playing/modding gta:SA

  • Members
  • Joined: 25 Feb 2003

#7

Posted 02 June 2004 - 08:34 AM

QUOTE (CraigKostelecky @ Jun 1 2004, 22:51)
But I've found another problem. After my first clip of ammo runs out, I can no longer shoot the gun. [..]

EDIT/Theory: do you have the most recent weapons.dat file. That may be what's causing it.

I took the rampage-opcode they used in VC to do rampage-missions, its parameter for uzi-driveby's is 42, so i don't know really what is causing this to happen... (it should be endless ammo afaik)

But I could have mixed up some params, because I dont know really if they changed it perhaps from gta3 to gtaVC how this opcode works (at least i know the gtama opcode goes like this: init_rampage "TEXT", rampagetype, duration, number_of_targets, target1, target2, target3, target4, 0)

PS: If somebody has a rampage-type list, I could look if 42 is correct for uzi-driveby... (it was used in VC, so i thought its correct)

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#8

Posted 02 June 2004 - 02:09 PM

Well here's a updat on the Import / Export garage.
I fixed the bug, and got the lines on the board working. Have a loook:
user posted image
All I have to do now is change the order of the lines. I just brought in a Mule and it puts a stripe on the bus tounge.gif .

ModelingMan
  • ModelingMan

    Crackalacking!

  • Members
  • Joined: 23 Jan 2004

#9

Posted 02 June 2004 - 02:20 PM

Looking good TwoZero. I was thinking about coding the Import/Export garages, but obviously I'll leave them to you. I'll need to think of something else to do/try sigh.gif

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#10

Posted 02 June 2004 - 02:45 PM Edited by TwoZero, 02 June 2004 - 09:58 PM.

Update again.

I fixed the location of the stripes. I tested it with bringing in 4 cars, all worked without bugs crashes etc.
Screenshot:
user posted image

And the code:
First the code to create the garage (put it with the other garages):
CODE
;IE Garage for Portland Docks:
0219:  $IE_GARAGE_PORT = create garage type  1? from 1146.1! -667.75!  10! to 1146.1! -685.68!  17.5! front 1173! -667.75!
057A: set garage  $IE_GARAGE_PORT max cars to  1?


The create thread and a variable for the complete check:
CODE
0004:  $IE_IMPORT_COMPLETE =  0?  \\ integer values
004F: create thread ££IE_IMPORT_INIT


And the complete Import code:
CODE
;;;;;;;;;;Import Part Portland;;;;;;;;;;;;;;;
:IE_IMPORT_INIT
03A4: name thread "IE_IM"
0004:  $IE_IMPORT_1 =  0?  \\ integer values \\Check for each car
0004:  $IE_IMPORT_2 =  0?  \\ integer values
0004:  $IE_IMPORT_3 =  0?  \\ integer values
0004:  $IE_IMPORT_4 =  0?  \\ integer values
0004:  $IE_IMPORT_5 =  0?  \\ integer values
0004:  $IE_IMPORT_6 =  0?  \\ integer values
0004:  $IE_IMPORT_7 =  0?  \\ integer values
0004:  $IE_IMPORT_8 =  0?  \\ integer values
0004:  $IE_IMPORT_9 =  0?  \\ integer values
0004:  $IE_IMPORT_10 =  0?  \\ integer values
0004:  $IE_IMPORT_11 =  0?  \\ integer values
0004:  $IE_IMPORT_12 =  0?  \\ integer values
0004:  $IE_IMPORT_13 =  0?  \\ integer values
0004:  $IE_IMPORT_14 =  0?  \\ integer values
0004:  $IE_IMPORT_15 =  0?  \\ integer values
0004:  $IE_IMPORT_16 =  0?  \\ integer values

:IE_IMPORT_START
0001: wait  100? ms
00D6: if  0?  
0256:   player $PLAYER_CHAR defined
004D: jump if false ££IE_IMPORT_START
00D6: if  0?
00E3:   player $PLAYER_CHAR  0? ()near point 1141.402! -680.7576! radius  15!  15!
004D: jump if false ££IE_IMPORT_START
0004:  $TIME_COUNT =  0?  \\ integer values

:IE_IMPORT_CHECK_1
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 143&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 170&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 161&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 194&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 152&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 186&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 144&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 226&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 153&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 200&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 138&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 133&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 185&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 167&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 148&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  0?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 158&
004D: jump if false ££IE_IMPORT_DOOR
0002: jump ££IE_IMPORT_INIT

:IE_IMPORT_DOOR
03C1:  $IE_IMPORT_CAR = player $PLAYER_CHAR car
021B: set garage  $IE_GARAGE_PORT to accept car  $IE_IMPORT_CAR


:IE_IMPORT_GARAGE
0001: wait  100? ms
00D6: if  0?  
8038:   NOT    $TIME_COUNT ==  20?  \\ integer values
004D: jump if false ££IE_IMPORT_CLEANUP
00D6: if  0?
80FA:   NOT   player $PLAYER_CHAR stopped  0? ()near point in car  1161.19! -676.138!  13! radius  10!  10!  4!
004D: jump if false ££IE_IMPORT_TAKE
0008:  $TIME_COUNT +=  1?  \\ integer values
0001: wait  500& ms
0002: jump ££IE_IMPORT_GARAGE

:IE_IMPORT_TAKE
01F5: $PLAYER_ACTOR = create_emulated_actor_from_player $PLAYER_CHAR
03E2: actor $PLAYER_ACTOR exit car
0239: actor  $PLAYER_ACTOR run to  1141.402! -680.7576!

:IE_IMPORT_PORT_CARCHECK1
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 143&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK2
0004:  $IE_IMPORT_1 =  1?
029B: $IE_PORT_CAR_1 = init object -32? (LINE) at 1146! -675.4375!  12.125!
0453: object  $IE_PORT_CAR_1 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK2
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 170&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK3
0004:  $IE_IMPORT_2 =  1?
029B: $IE_PORT_CAR_2 = init object -32? (LINE) at 1146! -675.4375!  12.3125!
0453: object  $IE_PORT_CAR_2 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK3
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 161&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK4
0004:  $IE_IMPORT_3 =  1?
029B: $IE_PORT_CAR_3 = init object -32? (LINE) at 1146! -675.4375!  12.5!
0453: object  $IE_PORT_CAR_3 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK4
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 194&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK5
0004:  $IE_IMPORT_4 =  1?
029B: $IE_PORT_CAR_4 = init object -32? (LINE) at 1146! -675.4375!  12.75!
0453: object  $IE_PORT_CAR_4 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK5
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 152&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK6
0004:  $IE_IMPORT_5 =  1?
029B: $IE_PORT_CAR_5 = init object -32? (LINE) at 1146! -675.4375!  12.9375!
0453: object  $IE_PORT_CAR_5 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK6
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 186&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK7
0004:  $IE_IMPORT_6 =  1?
029B: $IE_PORT_CAR_6 = init object -32? (LINE) at 1146! -675.4375!  13.125!
0453: object  $IE_PORT_CAR_6 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK7
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 144&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK8
0004:  $IE_IMPORT_7 =  1?
029B: $IE_PORT_CAR_7 = init object -32? (LINE) at 1146! -675.4375!  13.375!
0453: object  $IE_PORT_CAR_7 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK8
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 226&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK9
0004:  $IE_IMPORT_8 =  1?
029B: $IE_PORT_CAR_8 = init object -32? (LINE) at 1146! -675.4375!  13.5625!
0453: object  $IE_PORT_CAR_8 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK9
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 153&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK10
0004:  $IE_IMPORT_9 =  1?
029B: $IE_PORT_CAR_9 = init object -32? (LINE) at 1146! -674.5625!  12.125!
0453: object  $IE_PORT_CAR_9 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK10
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 200&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK11
0004:  $IE_IMPORT_10 =  1?
029B: $IE_PORT_CAR_10 = init object -32? (LINE) at 1146! -674.5625!  12.3125!
0453: object  $IE_PORT_CAR_10 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK11
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 138&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK12
0004:  $IE_IMPORT_11 =  1?
029B: $IE_PORT_CAR_11 = init object -32? (LINE) at 1146! -674.5625!  12.5!
0453: object  $IE_PORT_CAR_11 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK12
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 133&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK13
0004:  $IE_IMPORT_12 =  1?
029B: $IE_PORT_CAR_12 = init object -32? (LINE) at 1146! -674.5625!  12.75!
0453: object  $IE_PORT_CAR_12 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK13
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 185&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK14
0004:  $IE_IMPORT_13 =  1?
029B: $IE_PORT_CAR_13 = init object -32? (LINE) at 1146! -674.5625!  12.9375!
0453: object  $IE_PORT_CAR_13 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK14
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 167&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK15
0004:  $IE_IMPORT_14 =  1?
029B: $IE_PORT_CAR_14 = init object -32? (LINE) at 1146! -674.5625!  13.125!
0453: object  $IE_PORT_CAR_14 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK15
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 148&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK16
0004:  $IE_IMPORT_15 =  1?
029B: $IE_PORT_CAR_15 = init object -32? (LINE) at 1146! -674.5625!  13.375!
0453: object  $IE_PORT_CAR_15 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK16
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 158&
004D: jump if false ££IE_IMPORT_CLEANUP
0004:  $IE_IMPORT_16 =  1?
029B: $IE_PORT_CAR_7 = init object -32? (LINE) at 1146! -674.5625!  13.5625!
0453: object  $IE_PORT_CAR_7 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_END
0001: wait  100? ms
00D6: if  4?  
0038:   $IE_IMPORT_1 ==  1?  \\ integer values
0038:   $IE_IMPORT_2 ==  1?  \\ integer values
0038:   $IE_IMPORT_3 ==  1?  \\ integer values
0038:   $IE_IMPORT_4 ==  1?  \\ integer values
0038:   $IE_IMPORT_5 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  4?  
0038:   $IE_IMPORT_6 ==  1?  \\ integer values
0038:   $IE_IMPORT_7 ==  1?  \\ integer values
0038:   $IE_IMPORT_8 ==  1?  \\ integer values
0038:   $IE_IMPORT_9 ==  1?  \\ integer values
0038:   $IE_IMPORT_10 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  4?  
0038:   $IE_IMPORT_11 ==  1?  \\ integer values
0038:   $IE_IMPORT_12 ==  1?  \\ integer values
0038:   $IE_IMPORT_13 ==  1?  \\ integer values
0038:   $IE_IMPORT_14 ==  1?  \\ integer values
0038:   $IE_IMPORT_15 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  0?  
0038:   $IE_IMPORT_16 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
0004:  $IE_IMPORT_COMPLETE =  1?  \\ integer values
004E: end thread

:IE_IMPORT_CLEANUP
01C3: remove references to car  $IE_IMPORT_CAR
0002: jump ££IE_IMPORT_START


And to make the door work you need to edit the gta-lc.ini in the Liberty City dir. Open it with notepad and add the following line:
CODE
dt_savedra=impex_door


This is only the Importer!
I think it now works for 100% (although I didn't test it by bringing in 16 cars)

Next step will be the exporter, with text.

Edit: Added some stuff I forgot sad.gif

Assasinator(DK)
  • Assasinator(DK)

    Player Hater

  • Members
  • Joined: 02 Jul 2002

#11

Posted 02 June 2004 - 03:03 PM

looks good.
I'm just wondering, is it possible the cars you find will be saved when you save your game? Or is that not a problem at all?

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#12

Posted 02 June 2004 - 03:10 PM

QUOTE (Assasinator(DK) @ Jun 2 2004, 17:03)
looks good.
I'm just wondering, is it possible the cars you find will be saved when you save your game? Or is that not a problem at all?

I actually had to test that out. Well I saved the game with 4 cars imported, started a new game, loaded the old game and it was still there. So I think it works.

TbM2k
  • TbM2k

    playing/modding gta:SA

  • Members
  • Joined: 25 Feb 2003

#13

Posted 02 June 2004 - 03:35 PM

can you give me the line where the garage is created? (i want to put this code in my main.scm, but without garage it isnt working)

PS: Savegame-Files contain the complete var-space (at the beginning of the main.scm) with every set variable, so if you load everything will be returned to the state you had before saving. (This is one of the reasons why savegames wont work after editing main.scm, the other reason are the saved codepointers...)

ModelingMan
  • ModelingMan

    Crackalacking!

  • Members
  • Joined: 23 Jan 2004

#14

Posted 02 June 2004 - 03:35 PM

Well it's great that you got that working, well done.

Offtopic, @TwoZero: You have the fido skin with the flipped jacket, you'll have to to flip the jacket on the skin you have now for the jacket to appear correctly.

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#15

Posted 02 June 2004 - 04:04 PM

The garage should be defined with the rest of the garages, and it should look like this:
CODE
;IE Garage for Portland Docks:
0219:  $IE_GARAGE_PORT = create garage type  1? from 1146.1! -667.75!  10! to 1146.1! -685.68!  17.5! front 1173! -667.75!
057A: set garage  $IE_GARAGE_PORT max cars to  1?


I'm not sure, but I think something must be done to the laucher to get the doors working as well.

@TwoZero, instead of flipping your jacket manually, copy the original player.bmp file from GTA3. It might be quicker that way.

TbM2k
  • TbM2k

    playing/modding gta:SA

  • Members
  • Joined: 25 Feb 2003

#16

Posted 02 June 2004 - 04:18 PM

There is some other problem, the game uses "is_actor_in_area" to check at the Fire-Missions in which area the fire is (and shows you "there is a burning car in [AREA]"), so do i have to code a "check_area" sub for this to get it working?

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#17

Posted 02 June 2004 - 04:33 PM Edited by CraigKostelecky, 02 June 2004 - 04:45 PM.

To finish off the IE Import part: you need to add this to gta-lc.ini (make it the last line of that file)

CODE
dt_savedra=impex_door


Now, I'm off to fully test it.

EDIT: Found 1 bug, you're still looking for the skimmer instead of the RC Baron, change the 190 to 194.

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#18

Posted 02 June 2004 - 05:34 PM

Ok sorry I forgot some stuff.
I edited the post so everything should be there now. I did change the Skimmer in the old importer but I completely rewrote it today and I forgot about it.

And I found that wrong jacket skin rather funny but I will change it.

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#19

Posted 02 June 2004 - 09:05 PM Edited by TwoZero, 02 June 2004 - 09:43 PM.

First Real Beta Release!!!

Ok I got everything working now (as far as I know).
There is also included text, the exporter is updated and fully working.

Here is the complete source code with Exporter and Importer all working:
The created Garage:
CODE
;IE Garage for Portland Docks:
0219:  $IE_GARAGE_PORT = create garage type  1? from 1146.1! -667.75!  10! to 1146.1! -685.68!  17.5! front 1173! -667.75!
057A: set garage  $IE_GARAGE_PORT max cars to  1?


The start Variable and the Treads:
CODE
;IE Threads + Var
0004:  $IE_IMPORT_COMPLETE =  0?  \\ integer values
004F: create thread ££IE_IMPORT_INIT
004F: create thread ££IE_EXPORT_INIT


And the Import Export thread code:
CODE
;;;;;;;;;;Import Part Portland;;;;;;;;;;;;;;;
:IE_IMPORT_INIT
03A4: name thread "IE_IM"
0004:  $IE_IMPORT_1 =  0?  \\ integer values \\Check for each car
0004:  $IE_IMPORT_2 =  0?  \\ integer values
0004:  $IE_IMPORT_3 =  0?  \\ integer values
0004:  $IE_IMPORT_4 =  0?  \\ integer values
0004:  $IE_IMPORT_5 =  0?  \\ integer values
0004:  $IE_IMPORT_6 =  0?  \\ integer values
0004:  $IE_IMPORT_7 =  0?  \\ integer values
0004:  $IE_IMPORT_8 =  0?  \\ integer values
0004:  $IE_IMPORT_9 =  0?  \\ integer values
0004:  $IE_IMPORT_10 =  0?  \\ integer values
0004:  $IE_IMPORT_11 =  0?  \\ integer values
0004:  $IE_IMPORT_12 =  0?  \\ integer values
0004:  $IE_IMPORT_13 =  0?  \\ integer values
0004:  $IE_IMPORT_14 =  0?  \\ integer values
0004:  $IE_IMPORT_15 =  0?  \\ integer values
0004:  $IE_IMPORT_16 =  0?  \\ integer values

:IE_IMPORT_START
0001: wait  100? ms
00D6: if  0?  
0256:   player $PLAYER_CHAR defined
004D: jump if false ££IE_IMPORT_START
00D6: if  0?  
00E0:   player $PLAYER_CHAR driving
004D: jump if false ££IE_IMPORT_START
03C1:  $IE_IMPORT_CAR = player $PLAYER_CHAR car
00D6: if  0?
00B0:   $IE_IMPORT_CAR  0? ()in rectangle 1145.768! -686.3843! 1139.719! -675.7012!
004D: jump if false ££IE_IMPORT_START
0004:  $TIME_COUNT =  0?  \\ integer values

:IE_IMPORT_CHECK_1
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 143&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 170&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 161&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 190&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 152&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 186&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 144&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 226&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 153&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 200&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  4?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 138&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 133&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 185&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 167&
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 148&
004D: jump if false ££IE_IMPORT_DOOR
00D6: if  0?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 158&
004D: jump if false ££IE_IMPORT_DOOR
00BC: text highpriority "IMPORT2"  2000& ms  1? \\We are not interested in that model
0002: jump ££IE_IMPORT_INIT

:IE_IMPORT_DOOR
021B: set garage  $IE_GARAGE_PORT to accept car  $IE_IMPORT_CAR

:IE_IMPORT_GARAGE
0001: wait  100? ms
00D6: if  0?  
8038:   NOT    $TIME_COUNT ==  20?  \\ integer values
004D: jump if false ££IE_IMPORT_CLEANUP
00D6: if  0?
80FA:   NOT   player $PLAYER_CHAR stopped  0? ()near point in car  1161.19! -676.138!  13! radius  10!  10!  4!
004D: jump if false ££IE_IMPORT_TAKE
0008:  $TIME_COUNT +=  1?  \\ integer values
0001: wait  500& ms
0002: jump ££IE_IMPORT_GARAGE

:IE_IMPORT_TAKE
01F5: $PLAYER_ACTOR = create_emulated_actor_from_player $PLAYER_CHAR
03E2: actor $PLAYER_ACTOR exit car
0239: actor  $PLAYER_ACTOR run to  1141.402! -680.7576!

:IE_IMPORT_PORT_CARCHECK1
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 143&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK2
0004:  $IE_IMPORT_1 =  1?
029B: $IE_PORT_CAR_1 = init object -32? (LINE) at 1146! -675.4375!  12.125!
0453: object  $IE_PORT_CAR_1 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK2
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 170&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK3
0004:  $IE_IMPORT_2 =  1?
029B: $IE_PORT_CAR_2 = init object -32? (LINE) at 1146! -675.4375!  12.3125!
0453: object  $IE_PORT_CAR_2 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK3
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 161&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK4
0004:  $IE_IMPORT_3 =  1?
029B: $IE_PORT_CAR_3 = init object -32? (LINE) at 1146! -675.4375!  12.5!
0453: object  $IE_PORT_CAR_3 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK4
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 194&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK5
0004:  $IE_IMPORT_4 =  1?
029B: $IE_PORT_CAR_4 = init object -32? (LINE) at 1146! -675.4375!  12.75!
0453: object  $IE_PORT_CAR_4 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK5
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 152&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK6
0004:  $IE_IMPORT_5 =  1?
029B: $IE_PORT_CAR_5 = init object -32? (LINE) at 1146! -675.4375!  12.9375!
0453: object  $IE_PORT_CAR_5 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK6
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 186&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK7
0004:  $IE_IMPORT_6 =  1?
029B: $IE_PORT_CAR_6 = init object -32? (LINE) at 1146! -675.4375!  13.125!
0453: object  $IE_PORT_CAR_6 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK7
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 144&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK8
0004:  $IE_IMPORT_7 =  1?
029B: $IE_PORT_CAR_7 = init object -32? (LINE) at 1146! -675.4375!  13.375!
0453: object  $IE_PORT_CAR_7 set rotation  0!  0!  270!
;018C: play sound  1? at  0!  0!  0!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK8
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 226&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK9
0004:  $IE_IMPORT_8 =  1?
029B: $IE_PORT_CAR_8 = init object -32? (LINE) at 1146! -675.4375!  13.5625!
0453: object  $IE_PORT_CAR_8 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK9
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 153&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK10
0004:  $IE_IMPORT_9 =  1?
029B: $IE_PORT_CAR_9 = init object -32? (LINE) at 1146! -674.5625!  12.125!
0453: object  $IE_PORT_CAR_9 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK10
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 200&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK11
0004:  $IE_IMPORT_10 =  1?
029B: $IE_PORT_CAR_10 = init object -32? (LINE) at 1146! -674.5625!  12.3125!
0453: object  $IE_PORT_CAR_10 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK11
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 138&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK12
0004:  $IE_IMPORT_11 =  1?
029B: $IE_PORT_CAR_11 = init object -32? (LINE) at 1146! -674.5625!  12.5!
0453: object  $IE_PORT_CAR_11 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK12
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 133&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK13
0004:  $IE_IMPORT_12 =  1?
029B: $IE_PORT_CAR_12 = init object -32? (LINE) at 1146! -674.5625!  12.75!
0453: object  $IE_PORT_CAR_12 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK13
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 185&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK14
0004:  $IE_IMPORT_13 =  1?
029B: $IE_PORT_CAR_13 = init object -32? (LINE) at 1146! -674.5625!  12.9375!
0453: object  $IE_PORT_CAR_13 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK14
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 167&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK15
0004:  $IE_IMPORT_14 =  1?
029B: $IE_PORT_CAR_14 = init object -32? (LINE) at 1146! -674.5625!  13.125!
0453: object  $IE_PORT_CAR_14 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK15
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 148&
004D: jump if false ££IE_IMPORT_PORT_CARCHECK16
0004:  $IE_IMPORT_15 =  1?
029B: $IE_PORT_CAR_15 = init object -32? (LINE) at 1146! -674.5625!  13.375!
0453: object  $IE_PORT_CAR_15 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_PORT_CARCHECK16
0001: wait  100? ms
00D6: if  0?
0137:   car  $IE_IMPORT_CAR id == 158&
004D: jump if false ££IE_IMPORT_CLEANUP
0004:  $IE_IMPORT_16 =  1?
029B: $IE_PORT_CAR_7 = init object -32? (LINE) at 1146! -674.5625!  13.5625!
0453: object  $IE_PORT_CAR_7 set rotation  0!  0!  270!
0002: jump ££IE_IMPORT_END

:IE_IMPORT_END
0001: wait  4000& ms
00BC: text highpriority "IMPORT3"  3000& ms  1? \\Delivered like a pro. Complete the list and there'll be a bonus for you.
0001: wait  3000& ms
00D6: if  4?  
0038:   $IE_IMPORT_1 ==  1?  \\ integer values
0038:   $IE_IMPORT_2 ==  1?  \\ integer values
0038:   $IE_IMPORT_3 ==  1?  \\ integer values
0038:   $IE_IMPORT_4 ==  1?  \\ integer values
0038:   $IE_IMPORT_5 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  4?  
0038:   $IE_IMPORT_6 ==  1?  \\ integer values
0038:   $IE_IMPORT_7 ==  1?  \\ integer values
0038:   $IE_IMPORT_8 ==  1?  \\ integer values
0038:   $IE_IMPORT_9 ==  1?  \\ integer values
0038:   $IE_IMPORT_10 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  4?  
0038:   $IE_IMPORT_11 ==  1?  \\ integer values
0038:   $IE_IMPORT_12 ==  1?  \\ integer values
0038:   $IE_IMPORT_13 ==  1?  \\ integer values
0038:   $IE_IMPORT_14 ==  1?  \\ integer values
0038:   $IE_IMPORT_15 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
00D6: if  0?  
0038:   $IE_IMPORT_16 ==  1?  \\ integer values
004D: jump if false ££IE_IMPORT_START
0004:  $IE_IMPORT_COMPLETE =  1?  \\ integer values
00BC: text highpriority "IMPORT4"  5000& ms  1? \\All the cars. NICE! Here's a little something.
02FA: garage  $IE_GARAGE_PORT change to type  23?
03DA: set garage  $IE_GARAGE camera follows player
0360: open garage  $IE_GARAGE_PORT
004E: end thread

:IE_IMPORT_CLEANUP
01C3: remove references to car  $IE_IMPORT_CAR
0002: jump ££IE_IMPORT_START

;;;;;;;;;;;;Export Part Portland;;;;;;;;;;
:IE_EXPORT_INIT
03A4: name thread "IE_EX"

:IE_EXPORT_CHECK
0001: wait  250& ms
;Check if all cars are imported:
00D6: if  0?  
0038:   $IE_IMPORT_COMPLETE ==  1?  \\ integer values
004D: jump if false ££IE_EXPORT_CHECK

;IE Garage Portland Icons
;Left Front to Left Back
0518:  $IE_ICON_PORT_1 = create available asset pickup "PONY" at  1149! -669!  12.14! price  0?
0518:  $IE_ICON_PORT_2 = create available asset pickup "RUMPO" at  1153.2! -669!  12.14! price  0?
0518:  $IE_ICON_PORT_3 = create available asset pickup "BUS" at  1157.4! -669!  12.14! price  0?
0518:  $IE_ICON_PORT_4 = create available asset pickup "RCBARON" at  1161.6! -669!  12.14! price  0?
0518:  $IE_ICON_PORT_5 = create available asset pickup "BOBCAT" at  1165.8! -669!  12.14! price  0?
0518:  $IE_ICON_PORT_6 = create available asset pickup "YANKEE" at  1170! -669!  12.14! price  0?
;Left to right
0518:  $IE_ICON_PORT_7 = create available asset pickup "MULE" at 1170! -672!  12.14! price  0?
0518:  $IE_ICON_PORT_8 = create available asset pickup "BLISTAC" at 1170! -675!  12.14! price  0?
0518:  $IE_ICON_PORT_9 = create available asset pickup "WHOOPEE" at 1170! -678!  12.14! price  0?
0518:  $IE_ICON_PORT_10 = create available asset pickup "PATRIOT" at 1170! -681!  12.14! price  0?
;Right Back to Right Front
0518:  $IE_ICON_PORT_11 = create available asset pickup "TRASHM" at 1170! -684!  12.14! price  0?
0518:  $IE_ICON_PORT_12 = create available asset pickup "LINERUN" at  1165.8! -684!  12.14! price  0?
0518:  $IE_ICON_PORT_13 = create available asset pickup "FLATBED" at  1161.6! -684!  12.14! price  0?
0518:  $IE_ICON_PORT_14 = create available asset pickup "COACH" at  1157.4! -684!  12.14! price  0?
0518:  $IE_ICON_PORT_15 = create available asset pickup "MOONBM" at  1153.2! -684!  12.14! price  0?
0518:  $IE_ICON_PORT_16 = create available asset pickup "SECURI" at  1149! -684!  12.14! price  0?

:IE_PICKUP_PORT_1
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_1 picked up
004D: jump if false ££IE_PICKUP_PORT_2
;Set the car type for the spawning:
0004:  $IE_TYPE_PORT =  143&  \\ integer values \\Pony
;Recreate the pickup:
0518:  $IE_ICON_PORT_1 = create available asset pickup "PONY" at  1149! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_2
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_2 picked up
004D: jump if false ££IE_PICKUP_PORT_3
0004:  $IE_TYPE_PORT =  170&  \\ integer values \\Rumpo
0518:  $IE_ICON_PORT_2 = create available asset pickup "RUMPO" at  1153.2! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_3
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_3 picked up
004D: jump if false ££IE_PICKUP_PORT_4
0004:  $IE_TYPE_PORT =  161&  \\ integer values \\Bus
0518:  $IE_ICON_PORT_3 = create available asset pickup "BUS" at  1157.4! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_4
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_4 picked up
004D: jump if false ££IE_PICKUP_PORT_5
0004:  $IE_TYPE_PORT =  194&  \\ integer values \\Dodo
0518:  $IE_ICON_PORT_4 = create available asset pickup "RCBARON" at  1161.6! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_5
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_5 picked up
004D: jump if false ££IE_PICKUP_PORT_6
0004:  $IE_TYPE_PORT =  152&  \\ integer values \\Bobcat
0518:  $IE_ICON_PORT_5 = create available asset pickup "BOBCAT" at  1165.8! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_6
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_6 picked up
004D: jump if false ££IE_PICKUP_PORT_7
0004:  $IE_TYPE_PORT =  186&  \\ integer values \\Yankee
0518:  $IE_ICON_PORT_6 = create available asset pickup "YANKEE" at  1170! -669!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_7
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_7 picked up
004D: jump if false ££IE_PICKUP_PORT_8
0004:  $IE_TYPE_PORT =  144&  \\ integer values \\Mule
0518:  $IE_ICON_PORT_7 = create available asset pickup "MULE" at 1170! -672!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_8
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_8 picked up
004D: jump if false ££IE_PICKUP_PORT_9
0004:  $IE_TYPE_PORT =  226&  \\ integer values \\Blista Compact (Blista)
0518:  $IE_ICON_PORT_8 = create available asset pickup "BLISTAC" at 1170! -675!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_9
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_9 picked up
004D: jump if false ££IE_PICKUP_PORT_10
0004:  $IE_TYPE_PORT =  153&  \\ integer values \\Mr. Whoopee
0518:  $IE_ICON_PORT_9 = create available asset pickup "WHOOPEE" at 1170! -678!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_10
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_10 picked up
004D: jump if false ££IE_PICKUP_PORT_11
0004:  $IE_TYPE_PORT =  200&  \\ integer values \\Patriot
0518:  $IE_ICON_PORT_10 = create available asset pickup "PATRIOT" at 1170! -681!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_11
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_11 picked up
004D: jump if false ££IE_PICKUP_PORT_12
0004:  $IE_TYPE_PORT =  138&  \\ integer values \\Trashmaster
0518:  $IE_ICON_PORT_11 = create available asset pickup "TRASHM" at 1170! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_12
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_12 picked up
004D: jump if false ££IE_PICKUP_PORT_13
0004:  $IE_TYPE_PORT =  133&  \\ integer values \\Linerunner
0518:  $IE_ICON_PORT_12 = create available asset pickup "LINERUN" at  1165.8! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_13
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_13 picked up
004D: jump if false ££IE_PICKUP_PORT_14
0004:  $IE_TYPE_PORT =  185&  \\ integer values \\Flatbed
0518:  $IE_ICON_PORT_13 = create available asset pickup "FLATBED" at  1161.6! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_14
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_14 picked up
004D: jump if false ££IE_PICKUP_PORT_15
0004:  $IE_TYPE_PORT =  167&  \\ integer values \\Coach
0518:  $IE_ICON_PORT_14 = create available asset pickup "COACH" at  1157.4! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_15
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_15 picked up
004D: jump if false ££IE_PICKUP_PORT_16
0004:  $IE_TYPE_PORT =  148&  \\ integer values \\Moonbeam
0518:  $IE_ICON_PORT_15 = create available asset pickup "MOONBM" at  1153.2! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_PICKUP_PORT_16
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $IE_ICON_PORT_16 picked up
004D: jump if false ££IE_PICKUP_PORT_1
0004:  $IE_TYPE_PORT =  158&  \\ integer values \\Securicar
0518:  $IE_ICON_PORT_16 = create available asset pickup "SECURI" at  1149! -684!  12.14! price  0?
0002: jump ££IE_CAR_REQ_PORT

:IE_CAR_REQ_PORT
00BC: text highpriority "IMPORT1"  5000& ms  2? \\Go outside and wait for your vehicle.

:IE_OUTSIDE_CHECK
0001: wait  0? ms
00D6: if  0?  
0056:   player $PLAYER_CHAR  0? ()in rectangle 1145.768! -686.3843! 1139.719! -675.7012!
004D: jump if false ££IE_OUTSIDE_CHECK
0361: close garage  $IE_GARAGE_PORT
0247: request model $IE_TYPE_PORT
038B: load requested models
0001: wait  4000& ms

:IE_CAR_SPAWN_PORT
0001: wait  0? ms
00D6: if  0?  
0248:   model $IE_TYPE_PORT available
004D: jump if false ££IE_CAR_SPAWN_PORT
00A5:  $IE_CAR_PORT = create car $IE_TYPE_PORT at 1161.19! -676.138!  12.14!
0175: set_car  $IE_CAR_PORT z_angle_to  90!
0249: release model $IE_TYPE_PORT
0001: wait  1000& ms
0360: open garage  $IE_GARAGE_PORT
01C3: remove references to car  $IE_CAR_PORT
0002: jump ££IE_PICKUP_PORT_1


And to add some text you need to insert this in the Main table of the American.gxt:
CODE
IMPORT2 = We are not interested in that model
IMPORT3 = Delivered like a pro. Complete the list and there'll be a bonus for you.
IMPORT4 = All the cars. NICE! Here's a little something.


And as if that isn't enough:
You need to insert this to the gta-lc.ini in you GTA Liberty City install dir (insert it under the [Objects]) to make the garage door work:
CODE
dt_savedra=impex_door


And here are some screenshots of how it works:
Bring in cars and they will be marked on the list next to the door:
user posted image
Complete that list and the Exporter will be available.

In the Exporter select the car you want:
user posted image

Hit Tab to take the car and you will be tolled to wait outside:
user posted image

Walk out the garage and the door closes and opens again and there is your car:
user posted image

That's it. I think it completely works now Importer and Exporter. Please test it and if you notice a bug please post it here.
And now up to the SSV Garage.

And maybe if someone can provide me some hosting space I can make a package that includes all the edited files (for the lazy people) tounge.gif .

btw sorry for the double post.

Edit: Again the importer wanted a Skimmer and not a RC Baron I edited it blush.gif

ModelingMan
  • ModelingMan

    Crackalacking!

  • Members
  • Joined: 23 Jan 2004

#20

Posted 02 June 2004 - 09:09 PM

That's great TwoZero, I'll be sure to update my SCM and try this out. There will need to be an update for the pickup icon.

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#21

Posted 02 June 2004 - 09:39 PM Edited by CraigKostelecky, 02 June 2004 - 09:42 PM.

Looks great TwoZero. Good luck with the Shoreside garage (should be simple by not, right? wink.gif )

And don't worry about posting a scm update for just this. We've got more stuff (like the taxi and the rest of TbM2k's work) to combine, so a main.scm release should be right around the corner. Until then, those who want to do these missions will have to put them in themselves.

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#22

Posted 02 June 2004 - 10:00 PM

Oh damn I just uploaded a update zip when I read your post.
Well for the people it's here: Download

I will do the SSV garage tomorrow. Again it's 0:00 here and I need to get up at 5:00 bored.gif

Outback
  • Outback

    GTA:LC Team

  • Members
  • Joined: 20 Dec 2003

#23

Posted 02 June 2004 - 10:02 PM

I'd like to request that the Polmav at Kenji's Casino be changed to a Sea Sparrow for the next release.

Samutz
  • Samutz

    if ($lol) { die(rofl()); }

  • Members
  • Joined: 17 Sep 2003

#24

Posted 03 June 2004 - 12:18 AM

I started working on converting the RC missions this morning and so far they work great except that I'm having trouble with some of the gxt text.
For example:
CODE
00BC: text_highpriority "RC_1" 4000 ms 1;; You have 2 minutes (etc)

and
CODE
03E5: text_box "RCHELP";; Press (whatever, etc)


They wouldn't appear in-game. I checked the gxt and couldn't find the RC#, RC_#, and RCHELP(A) entries so I added them to the MAIN section. But in-game, they still won't show up. Is there a specific section I need to make or add them too? Or could it be something in the coding?

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#25

Posted 03 June 2004 - 03:49 AM Edited by CraigKostelecky, 03 June 2004 - 07:31 AM.

I was feeling a little inspired by the code TwoZero released today, so I decided to see if I could use his code to make a basic emergency vehicle crane. It doesn't do any fancy animation (like carry the car to or from the boat) but it is fully functional and I believe it's bug free (after a few hours of testing) So we can add the emergency vehicle crane as another part of the code that's done (or mostly). If anybody with a little more knowledge than me wants to tweak this, go right ahead.

The GXT entries used are the same as the import/export keys, so if you've updated those, you're okay. If not, look at TwoZero's last post on page one to find the entries to add.

Okay, here we go: the create_threads:
CODE
0004:  $EVC_COMPLETE =  0?  \\ integer values
004F: create thread ££EVC_IN_INIT
004F: create thread ££EVC_EX_INIT


And right after the Portland I/E garage and before mission 0:
CODE
;;;;;;;;;;Emergency Crane;;;;;;;;;;;;;;;
:EVC_IN_INIT
03A4: name thread "EVC_IN"
0004:  $EVC_POLICE =  0?  \\ integer values \\Check for each car
0004:  $EVC_AMBULANCE =  0?  \\ integer values
0004:  $EVC_FIRETRUCK =  0?  \\ integer values
0004:  $EVC_ENFORCER =  0?  \\ integer values
0004:  $EVC_FBI =  0?  \\ integer values
0004:  $EVC_TANK =  0?  \\ integer values

:EVC_IN_START
0001: wait  100? ms
00D6: if  0?  
0256:   player $PLAYER_CHAR defined
004D: jump if false ££EVC_IN_START
00D6: if  0?  
00E0:   player $PLAYER_CHAR driving
004D: jump if false ££EVC_IN_START  
00D6: if  0?  
0038:   $EVC_COMPLETE ==  0?
004D: jump if false ££EVC_IN_START  
03C1:  $EVC_IN_CAR = player $PLAYER_CHAR car
00D6: if  1?
00B0:   $EVC_IN_CAR  0? ()in rectangle 1226.465! -706.2094! 1215.901! -686.6553!
01C1:   car  $EVC_IN_CAR stopped  
004D: jump if false ££EVC_IN_START

:EVC_IN_CHECK1
00D6: if  5?  
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 156&;;Police
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 146&;;Ambulance
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 137&;;Firetruck
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 157&;;Enforcer
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 220&;;FBI    
;004D: jump if false ££EVC_IN_TAKE
;00D6: if  0?
80DE:   NOT   player $PLAYER_CHAR driving vehicle type 162&;;Tank
004D: jump if false ££EVC_IN_TAKE
00BC: text highpriority "IMPORT2"  2000& ms  1? \\We are not interested in that model
0002: jump ££EVC_IN_INIT

:EVC_IN_TAKE
01F5: $PLAYER_ACTOR = create_emulated_actor_from_player $PLAYER_CHAR
03E2: actor $PLAYER_ACTOR exit car
;0239: actor  $PLAYER_ACTOR run to  1213.682! -698.477!  

:EVC_IN_CARCHECK1
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 156&
004D: jump if false ££EVC_IN_CARCHECK2
0004:  $EVC_POLICE =  1?
0002: jump ££EVC_IN_END

:EVC_IN_CARCHECK2
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 146&
004D: jump if false ££EVC_IN_CARCHECK3
0004:  $EVC_AMBULANCE =  1?
0002: jump ££EVC_IN_END

:EVC_IN_CARCHECK3
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 137&
004D: jump if false ££EVC_IN_CARCHECK4
0004:  $EVC_FIRETRUCK =  1?
0002: jump ££EVC_IN_END

:EVC_IN_CARCHECK4
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 157&
004D: jump if false ££EVC_IN_CARCHECK5
0004:  $EVC_ENFORCER =  1?
0002: jump ££EVC_IN_END

:EVC_IN_CARCHECK5
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 220&
004D: jump if false ££EVC_IN_CARCHECK6
0004:  $EVC_FBI =  1?
0002: jump ££EVC_IN_END

:EVC_IN_CARCHECK6
0001: wait  100? ms
00D6: if  0?
0137:   car  $EVC_IN_CAR id == 162&
004D: jump if false ££EVC_IN_CLEANUP
0004:  $EVC_TANK =  1?

:EVC_IN_END              
0239: actor  $PLAYER_ACTOR run to  1213.682! -698.477!
0001: wait  4000& ms  
00A6: destroy_car $EVC_IN_CAR
00BC: text highpriority "IMPORT3"  3000& ms  1? \\Delivered like a pro. Complete the list and there'll be a bonus for you.
0001: wait  3000& ms
00D6: if  5?  
0038:   $EVC_POLICE ==  1?  \\ integer values
0038:   $EVC_AMBULANCE ==  1?  \\ integer values
0038:   $EVC_FIRETRUCK ==  1?  \\ integer values
0038:   $EVC_ENFORCER ==  1?  \\ integer values
0038:   $EVC_FBI ==  1?  \\ integer values
0038:   $EVC_TANK ==  1?  \\ integer values  
004D: jump if false ££EVC_IN_START
0004: $EVC_COMPLETE =  1?  \\ integer values
00BC: text highpriority "IMPORT4"  5000& ms  1? \\All the cars. NICE! Here's a little something.
004E: end thread

:EVC_IN_CLEANUP
01C3: remove references to car  $EVC_IN_CAR
0002: jump ££EVC_IN_START


;;;;;;;;;;;;Emergency Crane (Export);;;;;;;;;;
:EVC_EX_INIT
03A4: name thread "EVC_EX"

:EVC_EX_CHECK
0001: wait  250& ms
;Check if all cars are imported:
00D6: if  0?  
0038:   $EVC_COMPLETE ==  1?  \\ integer values
004D: jump if false ££EVC_EX_CHECK

;Emergency Crane Icons
0518:  $EVC_ICON_PORT_1 = create available asset pickup "POLICAR" at  1221.183! -689.4487!  12.14! price  0?
0518:  $EVC_ICON_PORT_2 = create available asset pickup "AMBULAN" at  1221.183! -692.2422!  12.14! price  0?
0518:  $EVC_ICON_PORT_3 = create available asset pickup "FIRETRK" at  1221.183! -695.0356!  12.14! price  0?
0518:  $EVC_ICON_PORT_4 = create available asset pickup "ENFORCR" at  1221.183! -697.8291!  12.14! price  0?
0518:  $EVC_ICON_PORT_5 = create available asset pickup "FBIRANC" at  1221.183! -700.6225!  12.14! price  0?
0518:  $EVC_ICON_PORT_6 = create available asset pickup "RHINO" at  1221.183! -703.4159!  12.14! price  0?

:EVC_PICKUP_PORT_1
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_1 picked up
004D: jump if false ££EVC_PICKUP_PORT_2
0004:  $EVC_TYPE_PORT =  156&  \\ integer values \\Police
0518:  $EVC_ICON_PORT_1 = create available asset pickup "POLICAR" at  1221.183! -689.4487!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_PICKUP_PORT_2
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_2 picked up
004D: jump if false ££EVC_PICKUP_PORT_3
0004:  $EVC_TYPE_PORT =  146&  \\ integer values \\Ambulance
0518:  $EVC_ICON_PORT_2 = create available asset pickup "AMBULAN" at  1221.183! -692.2422!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_PICKUP_PORT_3
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_3 picked up
004D: jump if false ££EVC_PICKUP_PORT_4
0004:  $EVC_TYPE_PORT =  137&  \\ integer values \\Firetruck
0518:  $EVC_ICON_PORT_3 = create available asset pickup "FIRETRK" at  1221.183! -695.0356!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_PICKUP_PORT_4
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_4 picked up
004D: jump if false ££EVC_PICKUP_PORT_5
0004:  $EVC_TYPE_PORT =  157&  \\ integer values \\Enforcer
0518:  $EVC_ICON_PORT_4 = create available asset pickup "ENFORCR" at  1221.183! -697.8291!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_PICKUP_PORT_5
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_5 picked up
004D: jump if false ££EVC_PICKUP_PORT_6
0004:  $EVC_TYPE_PORT =  220&  \\ integer values \\FBI Car
0518:  $EVC_ICON_PORT_5 = create available asset pickup "FBIRANC" at  1221.183! -700.6225!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_PICKUP_PORT_6
0001: wait  0? ms
00D6: if  0?  
0214:   pickup $EVC_ICON_PORT_6 picked up
004D: jump if false ££EVC_PICKUP_PORT_1
0004:  $EVC_TYPE_PORT =  162&  \\ integer values \\Rhino
0518:  $EVC_ICON_PORT_6 = create available asset pickup "RHINO" at  1221.183! -703.4159!  12.14! price  0?
0002: jump ££EVC_CAR_SPAWN

:EVC_CAR_SPAWN      
0001: wait  100? ms
0239: actor  $PLAYER_ACTOR run to  1213.682! -698.477!
0247: request model $EVC_TYPE_PORT
038B: load requested models  

:EVC_CAR_SPAWN_PORT
0001: wait  2000& ms
00D6: if  0?  
0248:   model $EVC_TYPE_PORT available
004D: jump if false ££EVC_CAR_SPAWN_PORT
00A5:  $EVC_CAR_PORT = create car $EVC_TYPE_PORT at 1221.183! -696.5!  12.14!
0175: set_car  $EVC_CAR_PORT z_angle_to  0!
020A: set_car $EVC_CAR_PORT door_status_to  0?
0249: release model $EVC_TYPE_PORT
0001: wait  1000& ms
01C3: remove references to car  $EVC_CAR_PORT
0002: jump ££EVC_PICKUP_PORT_1


EDIT: It would be nice if we could get one of our graphics guys to convert the house asset icon into something a little more GTAIII.

Samutz
  • Samutz

    if ($lol) { die(rofl()); }

  • Members
  • Joined: 17 Sep 2003

#26

Posted 03 June 2004 - 04:49 AM

I still can't figure out why I can't get that text to work. But other than that I've got 4 RC missions converted.

If anyone wants to take a look at my gxt file and figure out what I was screwing up, it's here:
http://vvv.keilbasa....lc/american.gxt

The code itself is quite long, so for the sake of this page's length I've put it into this text file:
http://vvv.keilbasa....talc/rc_scm.txt

Here's some screenshots of the missions in action:
user posted imageuser posted image
user posted imageuser posted image
user posted imageuser posted image
user posted imageuser posted image


Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#27

Posted 03 June 2004 - 05:17 AM Edited by CraigKostelecky, 03 June 2004 - 05:37 AM.

I couldn't get your gxt to open. So I'm just adding the values needed to the official gxt. I'll update when I'm done with it.

Okay, I'm done with the GXT, but I haven't had a chance to test it yet. I'm still trying to convert your code to 0.22 format.

Samutz
  • Samutz

    if ($lol) { die(rofl()); }

  • Members
  • Joined: 17 Sep 2003

#28

Posted 03 June 2004 - 05:34 AM

I think it's got something to do with BW's editor (one that comes with Builder 1.3). I found an older editor (CyQ's) I used to use on my hdd and it wouldn't load my edited gxt. So I re-edited the original using it and it works now.

Craig Kostelecky
  • Craig Kostelecky

    GTA:LC Team Leader

  • The Connection
  • Joined: 28 Jan 2004

#29

Posted 03 June 2004 - 05:56 AM

Okay, now I've got the code all integrated. I've noticed a few things with the gxt that will take a little more effort. (such as the number of Mafia members killed shows up as the number of drug deals made on the stats sheet)

I'm going to keep on it. If you want the files I'm working with, just let me know.

TwoZero
  • TwoZero

    Ghetto Star

  • The Connection
  • Joined: 15 Apr 2003

#30

Posted 03 June 2004 - 07:20 AM

I'm glad to see that some people are inspired by my work. Very good work!

@Samutz: I looked at your source for a second and I saw that you didn't convert the labels but just used the old gta3 labels (with Lable102554FF or something like that) it is a lot easier to edit and read later if you use your own labels. But that might be a lot of work but the builder has a build in Find and Replace function.

@CraigKostelecky: The source looks good. It's still basic but I think everything should work, exept maybe for 1 thing; Does 00D6: if 5? work? I never used more then 4 because I only saw rockstart using 5 once.
And onother thing I noticed in the end you use 0175: set_car $EVC_CAR_PORT z_angle_to 0! after the car is spawned. I think you don't have to set the z angle if it must be 0 it's 0 by default (I'm not sure of it though).

And another regulair question. In the original code of the Import Export garage Rockstart counts every car that you brought in as a Mission point. Do we use those points again or do we leave them out?

And keep up this good work. It's great to see some progress in the mission script user posted image




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users