Call of Duty 4: Bobbing Models: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| Line 11: | Line 11: | ||
Place the 2 models how we want them with their top surface slightly (2/3 units) over the water patch. | Place the 2 models how we want them with their top surface slightly (2/3 units) over the water patch. | ||
[[Image:bobbing_4.png]] | [[Image:bobbing_4.png]] | ||
Select the first model, right clic in the 2D window and select ''Script'' then ''Script_model'' | Select the first model, right clic in the 2D window and select ''Script'' then ''Script_model'' | ||
[[Image:bobbing_5.png]] | [[Image:bobbing_5.png]] | ||
Then witht the first model still selected press 'n' to bring up the entity window and enter the following key/values: | Then witht the first model still selected press 'n' to bring up the entity window and enter the following key/values: | ||
| Line 27: | Line 31: | ||
The result should be: | The result should be: | ||
[[Image:bobbing_2.png]] | [[Image:bobbing_2.png]] | ||
and | and | ||
[[Image:bobbing_3.png]] | [[Image:bobbing_3.png]] | ||
Revision as of 14:37, 16 October 2008
This tutorial shows how to create 'bobbing' models in water to give a floating movement impression. I got the script from a COD2 tutorials by BR3NT
2 models are animated in this example:
com_bottle4 me_plastic_crate1

In Radiant
Place the 2 models how we want them with their top surface slightly (2/3 units) over the water patch.
Select the first model, right clic in the 2D window and select Script then Script_model
Then witht the first model still selected press 'n' to bring up the entity window and enter the following key/values:
targetname bobbing_obj
Do the same steps for the second model using those:
targetname bobbing_obj2
The result should be:
and
In Script
- Create a new file under /raw/maps/mp/ called _bobbing_obj.gsc and have the following in:
main()
{
thread bobbing_think();
bobbing_think()
{
obj1 = getent("bobbing_obj","targetname"); // Get the name of the script_model
obj2 = getent("bobbing_obj2","targetname"); // Get the name of the script_model
wait (randomfloat (1.5)); // Generate a random Number of Seconds Between Bobbings
org1 = (-83, -895, 688); // Define Origin or Location of Your Boat/script_model
org2 = (29, -897.1, 683); // Define Origin or Location of Your Boat/script_model
timer = 1; // Speed of the Bobbing - Higer Number Slower Bobbing
while (1)
{
obj1 moveto (org1 + (0,0,2), timer, timer*0.5, timer*0.5); // 2 is num. of units to go over Orig.
obj2 moveto (org2 + (0,0,-1), timer, timer*0.5, timer*0.5);
wait (timer);
obj1 moveto (org1 + (0,0,-2), timer, timer*0.5, timer*0.5); // 2 is num. of units to go over Orig.
obj2 moveto (org2 + (0,0,1), timer, timer*0.5, timer*0.5);
wait (timer);
}
}
In your main mp GSC, after maps\mp\_load::main(); add this line:
maps\mp\_bobbing_obj::main();
Now, add this to your Zone File:
rawfile,maps/mp/_bobbing_obj.gsc
Compile and test!
--Zeroy. 14:18, 16 October 2008 (UTC)



