This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
arma2:terrain:class_names [2012-07-20 08:05] snakeman added more detailed explanation. |
arma2:terrain:class_names [2012-09-03 08:13] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Class Names ====== | ||
- | Class Names **Types** | ||
- | |||
- | In terrains you can name locations / positions, usually cities and other important populated places. Also these locations can help scripts to find out flat areas and such. | ||
- | |||
- | These are in your terrain's config.cpp under the name "class names", for example here is ArmA 2 Chernarus config.cpp example: | ||
- | <code cpp> | ||
- | class Names | ||
- | { | ||
- | class city_Chernogorsk | ||
- | { | ||
- | name = "$STR_LOCATION_CHERNOGORSK"; | ||
- | position[] = | ||
- | { | ||
- | 6731.21, 2554.13 | ||
- | }; | ||
- | type = "NameCityCapital"; | ||
- | speech[] = | ||
- | { | ||
- | "Chernogorsk" | ||
- | }; | ||
- | radiusA = 300.0; | ||
- | radiusB = 300.0; | ||
- | angle = 0.0; | ||
- | }; | ||
- | class city_Elektrozavodsk | ||
- | { | ||
- | name = "$STR_LOCATION_ELEKTROZAVODSK"; | ||
- | position[] = | ||
- | { | ||
- | 10313.72, 2159.41 | ||
- | }; | ||
- | type = "NameCity"; | ||
- | speech[] = | ||
- | { | ||
- | "Elektrozavodsk" | ||
- | }; | ||
- | radiusA = 200.0; | ||
- | radiusB = 200.0; | ||
- | angle = 0.0; | ||
- | }; | ||
- | ... | ||
- | </code> | ||
- | |||
- | |||
- | ====== Config Class Prefixes ====== | ||
- | |||
- | BIS uses config class name prefixes like: AAirport_, ACityC_, AFlat_, AFlatC_, AFlatCS_, airport_, AStrong_, city_, hill_, local_ (and Local_ but I don't think case matters?), V_ (vegetation), veg_, vill_, w_ and water_ | ||
- | |||
- | |||
- | ====== Name ====== | ||
- | |||
- | Name is simply the text string of the name of this location. | ||
- | <code cpp> | ||
- | name = "$STR_LOCATION_CHERNOGORSK"; | ||
- | </code> | ||
- | In this Chernarus example it uses stringtable to pull the name string so it can automatically translate it to different languages etc. | ||
- | |||
- | |||
- | ====== Position ====== | ||
- | |||
- | Position is normal 2D coordinate for this location. | ||
- | <code cpp> | ||
- | position[] = | ||
- | { | ||
- | 5300.71, 8645.9 | ||
- | }; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Type ====== | ||
- | |||
- | ArmA class names types: | ||
- | <code cpp> | ||
- | type = "BorderCrossing"; | ||
- | type = "Hill"; | ||
- | type = "NameCity"; | ||
- | type = "NameCityCapital"; | ||
- | type = "NameLocal"; | ||
- | type = "NameMarine"; | ||
- | type = "NameVillage"; | ||
- | type = "RockArea"; | ||
- | type = "VegetationBroadleaf"; | ||
- | type = "VegetationFir"; | ||
- | type = "VegetationPalm"; | ||
- | type = "VegetationVineyard"; | ||
- | type = "ViewPoint"; | ||
- | </code> | ||
- | |||
- | ArmA 2 class names types: | ||
- | <code cpp> | ||
- | type = "Airport"; | ||
- | type = "CityCenter"; | ||
- | type = "FlatArea"; | ||
- | type = "FlatAreaCity"; | ||
- | type = "FlatAreaCitySmall"; | ||
- | type = "Hill"; | ||
- | type = "NameCity"; | ||
- | type = "NameCityCapital"; | ||
- | type = "NameLocal"; | ||
- | type = "NameMarine"; | ||
- | type = "NameVillage"; | ||
- | type = "StrongpointArea"; | ||
- | type = "VegetationBroadleaf"; | ||
- | type = "VegetationFir"; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Speech ====== | ||
- | |||
- | <code cpp> | ||
- | speech[] = | ||
- | { | ||
- | "Chernogorsk" | ||
- | }; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Neighbors ====== | ||
- | |||
- | <code cpp> | ||
- | neighbors[] = | ||
- | { | ||
- | "ACityC_Prigorodki", "ACityC_Balota", "ACityC_Nadezhdino", "ACityC_Mogilevka" | ||
- | }; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Demography ====== | ||
- | |||
- | <code cpp> | ||
- | demography[] = | ||
- | { | ||
- | "CIV", 0.0, "CIV_RU", 0.0 | ||
- | }; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Radius ====== | ||
- | |||
- | These locations also are affiliated with radius to define the size, they are **radiusA** and **radiusB**. | ||
- | <code cpp> | ||
- | radiusA = 100; | ||
- | radiusB = 100; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Angle ====== | ||
- | |||
- | <code cpp> | ||
- | angle = 305.903; | ||
- | </code> | ||
- | |||
- | |||
- | ====== Notes ====== | ||
- | |||
- | See also [[arma2:terrain:ambient_modules|ArmA 2 Terrain Ambient Mobules]] |