share/hedgewars/Data/Scripts/Multiplayer/Construction_Mode.lua
changeset 11762 660599c04bd8
parent 11747 3182ee5be2b0
parent 11761 25c6188084c2
child 11881 34ede05e4d4f
equal deleted inserted replaced
11757:6874644a2d00 11762:660599c04bd8
   949 				{amDrill, 		"amDrill",			0, loc("Drill Rocket"), 	3*placeholder},
   949 				{amDrill, 		"amDrill",			0, loc("Drill Rocket"), 	3*placeholder},
   950 				{amSnowball, 	"amSnowball",		0, loc("Mudball"), 			3*placeholder},
   950 				{amSnowball, 	"amSnowball",		0, loc("Mudball"), 			3*placeholder},
   951 
   951 
   952 				{amGrenade,		"amGrenade",		0, loc("Grenade"), 			2*placeholder},
   952 				{amGrenade,		"amGrenade",		0, loc("Grenade"), 			2*placeholder},
   953 				{amClusterBomb,	"amClusterBomb",	0, loc("Cluster Bomb"), 	3*placeholder},
   953 				{amClusterBomb,	"amClusterBomb",	0, loc("Cluster Bomb"), 	3*placeholder},
   954 				{amMolotov, 	"amMolotov",		0, loc("Molotov Cocktail"), 3*placeholder},
       
   955 				{amWatermelon, 	"amWatermelon",		0, loc("Watermelon Bomb"), 25*placeholder},
   954 				{amWatermelon, 	"amWatermelon",		0, loc("Watermelon Bomb"), 25*placeholder},
   956 				{amHellishBomb,	"amHellishBomb",	0, loc("Hellish hand-grenade"), 25*placeholder},
   955 				{amHellishBomb,	"amHellishBomb",	0, loc("Hellish hand-grenade"), 25*placeholder},
       
   956 				{amMolotov, 	"amMolotov",		0, loc("Molotov Cocktail"), 3*placeholder},
   957 				{amGasBomb, 	"amGasBomb",		0, loc("Old Limburger"), 		3*placeholder},
   957 				{amGasBomb, 	"amGasBomb",		0, loc("Old Limburger"), 		3*placeholder},
   958 
   958 
   959 				{amShotgun,		"amShotgun",		0, loc("Shotgun"), 			2*placeholder},
   959 				{amShotgun,		"amShotgun",		0, loc("Shotgun"), 			2*placeholder},
   960 				{amDEagle,		"amDEagle",			0, loc("Desert Eagle"), 	2*placeholder},
   960 				{amDEagle,		"amDEagle",			0, loc("Desert Eagle"), 	2*placeholder},
   961 				{amFlamethrower,"amFlamethrower",	0, loc("Flamethrower"), 	4*placeholder},
       
   962 				{amSniperRifle,	"amSniperRifle",	0, loc("Sniper Rifle"), 	3*placeholder},
   961 				{amSniperRifle,	"amSniperRifle",	0, loc("Sniper Rifle"), 	3*placeholder},
   963 				--{amSineGun, 	"amSineGun",		0, loc("Sine Gun"), 			6*placeholder},
   962 				--{amSineGun, 	"amSineGun",		0, loc("Sine Gun"), 			6*placeholder},
       
   963 				{amFlamethrower,"amFlamethrower",	0, loc("Flamethrower"), 	4*placeholder},
   964 				{amIceGun, 		"amIceGun",			0, loc("Freezer"), 			15*placeholder},
   964 				{amIceGun, 		"amIceGun",			0, loc("Freezer"), 			15*placeholder},
   965 				{amLandGun,		"amLandGun",		0, loc("Land Spray"), 	5*placeholder},
       
   966 
   965 
   967 				{amFirePunch, 	"amFirePunch",		0, loc("Shoryuken"), 		3*placeholder},
   966 				{amFirePunch, 	"amFirePunch",		0, loc("Shoryuken"), 		3*placeholder},
   968 				{amWhip,		"amWhip",			0, loc("Whip"), 			1*placeholder},
   967 				{amWhip,		"amWhip",			0, loc("Whip"), 			1*placeholder},
   969 				{amBaseballBat, "amBaseballBat",	0, loc("Baseball Bat"), 	7*placeholder},
   968 				{amBaseballBat, "amBaseballBat",	0, loc("Baseball Bat"), 	7*placeholder},
   970 				--{amKamikaze, 	"amKamikaze",		0, loc("Kamikaze"),			1*placeholder},
   969 				--{amKamikaze, 	"amKamikaze",		0, loc("Kamikaze"),			1*placeholder},
   978 				--{amRCPlane,		"amRCPlane",		0, loc("RC Plane"), 	25*placeholder},
   977 				--{amRCPlane,		"amRCPlane",		0, loc("RC Plane"), 	25*placeholder},
   979 				{amSMine,		"amSMine",			0, loc("Sticky Mine"), 		5*placeholder},
   978 				{amSMine,		"amSMine",			0, loc("Sticky Mine"), 		5*placeholder},
   980 
   979 
   981 				--{amAirAttack,	"amAirAttack",		0, loc("Air Attack"), 		10*placeholder},
   980 				--{amAirAttack,	"amAirAttack",		0, loc("Air Attack"), 		10*placeholder},
   982 				--{amMineStrike,	"amMineStrike",		0, loc("Mine Strike"), 		15*placeholder},
   981 				--{amMineStrike,	"amMineStrike",		0, loc("Mine Strike"), 		15*placeholder},
   983 				--{amDrillStrike,	"amDrillStrike",	0, loc("Drill Strike"), 15*placeholder},
       
   984 				--{amNapalm, 		"amNapalm",			0, loc("Napalm"), 		15*placeholder},
   982 				--{amNapalm, 		"amNapalm",			0, loc("Napalm"), 		15*placeholder},
   985 				--{amPiano,		"amPiano",			0, loc("Piano Strike"), 	40*placeholder},
   983 				--{amPiano,		"amPiano",			0, loc("Piano Strike"), 	40*placeholder},
       
   984 				--{amDrillStrike,	"amDrillStrike",	0, loc("Drill Strike"), 15*placeholder},
   986 
   985 
   987 				{amKnife,		"amKnife",			0, loc("Cleaver"), 			2*placeholder},
   986 				{amKnife,		"amKnife",			0, loc("Cleaver"), 			2*placeholder},
   988 
   987 
   989 				{amBirdy,		"amBirdy",			0, loc("Birdy"), 			7*placeholder}
   988 				{amBirdy,		"amBirdy",			0, loc("Birdy"), 			7*placeholder}
   990 
   989 
   991 				}
   990 				}
   992 
   991 
   993  utilArray =
   992  utilArray =
   994 				{
   993 				{
       
   994 				{amPickHammer,		"amPickHammer",		0, loc("Pick Hammer"), 		2*placeholder},
   995 				{amBlowTorch, 		"amBlowTorch",		0, loc("Blow Torch"), 		4*placeholder},
   995 				{amBlowTorch, 		"amBlowTorch",		0, loc("Blow Torch"), 		4*placeholder},
   996 				{amPickHammer,		"amPickHammer",		0, loc("Pick Hammer"), 		2*placeholder},
       
   997 				--{amGirder, 			"amGirder",			0, loc("Girder"), 		4*placeholder},
   996 				--{amGirder, 			"amGirder",			0, loc("Girder"), 		4*placeholder},
       
   997 				{amLandGun,		"amLandGun",		0, loc("Land Spray"), 	5*placeholder},
   998 				--{amRubber, 			"amRubber",			0, loc("Rubber"), 	5*placeholder},
   998 				--{amRubber, 			"amRubber",			0, loc("Rubber"), 	5*placeholder},
   999 				{amPortalGun,		"amPortalGun",		0, loc("Portable Portal Device"), 15*placeholder},
       
  1000 
   999 
  1001 				{amRope, 			"amRope",			0, loc("Rope"), 			7*placeholder},
  1000 				{amRope, 			"amRope",			0, loc("Rope"), 			7*placeholder},
  1002 				{amParachute, 		"amParachute",		0, loc("Parachute"), 		2*placeholder},
  1001 				{amParachute, 		"amParachute",		0, loc("Parachute"), 		2*placeholder},
  1003 				--{amTeleport,		"amTeleport",		0, loc("Teleport"), 		6*placeholder},
  1002 				--{amTeleport,		"amTeleport",		0, loc("Teleport"), 		6*placeholder},
  1004 				{amJetpack,			"amJetpack",		0, loc("Flying Saucer"), 	8*placeholder},
  1003 				{amJetpack,			"amJetpack",		0, loc("Flying Saucer"), 	8*placeholder},
       
  1004 				{amPortalGun,		"amPortalGun",		0, loc("Portable Portal Device"), 15*placeholder},
  1005 
  1005 
  1006 				{amInvulnerable,	"amInvulnerable",	0, loc("Invulnerable"), 	5*placeholder},
  1006 				{amInvulnerable,	"amInvulnerable",	0, loc("Invulnerable"), 	5*placeholder},
  1007 				{amLaserSight,		"amLaserSight",		0, loc("Laser Sight"), 		2*placeholder},
  1007 				{amLaserSight,		"amLaserSight",		0, loc("Laser Sight"), 		2*placeholder},
  1008 				{amVampiric,		"amVampiric",		0, loc("Vampirism"), 		6*placeholder},
  1008 				{amVampiric,		"amVampiric",		0, loc("Vampirism"), 		6*placeholder},
  1009 
  1009 				--{amResurrector, 	"amResurrector",	0, loc("Resurrector"), 		8*placeholder},
       
  1010 				--{amTardis, 			"amTardis",			0, loc("Time Box"), 			2*placeholder},
       
  1011 
       
  1012 				--{amSwitch,			"amSwitch",			0, loc("Switch Hog"), 		4*placeholder}
  1010 				{amLowGravity, 		"amLowGravity",		0, loc("Low Gravity"), 		4*placeholder},
  1013 				{amLowGravity, 		"amLowGravity",		0, loc("Low Gravity"), 		4*placeholder},
  1011 				{amExtraDamage, 	"amExtraDamage",	0, loc("Extra Damage"), 	6*placeholder},
  1014 				{amExtraDamage, 	"amExtraDamage",	0, loc("Extra Damage"), 	6*placeholder},
  1012 				{amExtraTime,		"amExtraTime",		0, loc("Extra Time"), 		8*placeholder}
  1015 				{amExtraTime,		"amExtraTime",		0, loc("Extra Time"), 		8*placeholder}
  1013 
  1016 
  1014 				--{amResurrector, 	"amResurrector",	0, loc("Resurrector"), 		8*placeholder},
       
  1015 				--{amTardis, 			"amTardis",			0, loc("Time Box"), 			2*placeholder},
       
  1016 
       
  1017 				--{amSwitch,			"amSwitch",			0, loc("Switch Hog"), 		4*placeholder}
       
  1018 				}
  1017 				}
  1019 
  1018 
  1020 ----------------------------
  1019 ----------------------------
  1021 -- placement shite
  1020 -- placement shite
  1022 ----------------------------
  1021 ----------------------------
  1030 				"Girder Placement Mode",
  1029 				"Girder Placement Mode",
  1031 				"Rubber Placement Mode",
  1030 				"Rubber Placement Mode",
  1032 				"Mine Placement Mode",
  1031 				"Mine Placement Mode",
  1033 				"Sticky Mine Placement Mode",
  1032 				"Sticky Mine Placement Mode",
  1034 				"Barrel Placement Mode",
  1033 				"Barrel Placement Mode",
  1035 				"Health Crate Placement Mode",
       
  1036 				"Weapon Crate Placement Mode",
  1034 				"Weapon Crate Placement Mode",
  1037 				"Utility Crate Placement Mode",
  1035 				"Utility Crate Placement Mode",
       
  1036 				"Health Crate Placement Mode",
  1038 				"Structure Placement Mode"
  1037 				"Structure Placement Mode"
  1039 				}
  1038 				}
  1040 
  1039 
  1041 
  1040 
  1042  sProx = 	{
  1041  sProx = 	{
  1043 				{loc("Girder Placement Mode"),false},
  1042 				{loc("Girder Placement Mode"),false},
  1044 				{loc("Rubber Placement Mode"),false},
  1043 				{loc("Rubber Placement Mode"),false},
  1045 				{loc("Mine Placement Mode"),false},
  1044 				{loc("Mine Placement Mode"),false},
  1046 				{loc("Sticky Mine Placement Mode"),false},
  1045 				{loc("Sticky Mine Placement Mode"),false},
  1047 				{loc("Barrel Placement Mode"),false},
  1046 				{loc("Barrel Placement Mode"),false},
  1048 				{loc("Health Crate Placement Mode"),false},
       
  1049 				{loc("Weapon Crate Placement Mode"),false},
  1047 				{loc("Weapon Crate Placement Mode"),false},
  1050 				{loc("Utility Crate Placement Mode"),false},
  1048 				{loc("Utility Crate Placement Mode"),false},
       
  1049 				{loc("Health Crate Placement Mode"),false},
  1051 				{loc("Structure Placement Mode"),false},
  1050 				{loc("Structure Placement Mode"),false},
  1052 				{loc("Teleportation Mode"),false}
  1051 				{loc("Teleportation Mode"),false}
  1053 				}
  1052 				}
  1054 
  1053 
  1055 
  1054 
  1271 				RedefineSubset()
  1270 				RedefineSubset()
  1272 
  1271 
  1273 			end
  1272 			end
  1274 
  1273 
  1275 			-- update display selection criteria
  1274 			-- update display selection criteria
  1276 			if (curWep == amGirder) or (curWep == amAirAttack) or (curWep == amNapalm) or (curWep == amDrillStrike) or (curWep == amRubber) then
  1275 			if ((curWep == amGirder) or (curWep == amAirAttack) or (curWep == amNapalm) or (curWep == amDrillStrike) or (curWep == amRubber))
       
  1276 				and (CurrentHedgehog ~= nil or band(GetState(CurrentHedgehog), gstHHDriven) ~= 0) then
  1277 
  1277 
  1278 				---------------hooolllllyyyy fucking shit this
  1278 				---------------hooolllllyyyy fucking shit this
  1279 				-- code is a broken mess now
  1279 				-- code is a broken mess now
  1280 				-- it was redesigned and compromised three times
  1280 				-- it was redesigned and compromised three times
  1281 				-- so now it is a mess trying to do what it was
  1281 				-- so now it is a mess trying to do what it was
  1354 --		contents of crates
  1354 --		contents of crates
  1355 --		gears to reposition etc.
  1355 --		gears to reposition etc.
  1356 ---------------------------------------------------------------
  1356 ---------------------------------------------------------------
  1357 
  1357 
  1358 function updateCost()
  1358 function updateCost()
       
  1359 
       
  1360 	if CurrentHedgehog == nil or band(GetState(CurrentHedgehog), gstHHDriven) == 0 then return end
  1359 
  1361 
  1360 	if pMode[pIndex] == loc("Healing Station") then
  1362 	if pMode[pIndex] == loc("Healing Station") then
  1361 		placedExpense = 50
  1363 		placedExpense = 50
  1362 	elseif pMode[pIndex] == loc("Weapon Filter") then
  1364 	elseif pMode[pIndex] == loc("Weapon Filter") then
  1363 		placedExpense = 50
  1365 		placedExpense = 50
  1419 	end
  1421 	end
  1420 
  1422 
  1421 end
  1423 end
  1422 
  1424 
  1423 function showModeMessage()
  1425 function showModeMessage()
  1424 	if CurrentHedgehog == nil then return end
  1426 	if CurrentHedgehog == nil or band(GetState(CurrentHedgehog), gstHHDriven) == 0 then return end
  1425 	local val = pMode[pIndex]
  1427 	local val = pMode[pIndex]
  1426 	local str
  1428 	local str
  1427 	if cat[cIndex] == "Mine Placement Mode" then
  1429 	if cat[cIndex] == "Mine Placement Mode" then
  1428 		-- timer in seconds
  1430 		-- timer in seconds
  1429 		str = string.format(loc("%d sec"), div(val, 1000))
  1431 		str = string.format(loc("%d sec"), div(val, 1000))
  1487 --		health/weapon/utility crate, placement of gears
  1489 --		health/weapon/utility crate, placement of gears
  1488 ---------------------------------------------------------
  1490 ---------------------------------------------------------
  1489 function onUp()
  1491 function onUp()
  1490 
  1492 
  1491 	if ( (curWep == amNapalm) or (curWep == amDrillStrike) ) then
  1493 	if ( (curWep == amNapalm) or (curWep == amDrillStrike) ) then
  1492 		updatePlacementDisplay(-1)
  1494 		if CurrentHedgehog ~= nil or band(GetState(CurrentHedgehog), gstHHDriven) ~= 0 then
       
  1495 			updatePlacementDisplay(-1)
       
  1496 		end
  1493 	end
  1497 	end
  1494 
  1498 
  1495 end
  1499 end
  1496 
  1500 
  1497 function onDown()
  1501 function onDown()
  1498 
  1502 
  1499 	if ( (curWep == amNapalm) or (curWep == amDrillStrike) ) then
  1503 	if ( (curWep == amNapalm) or (curWep == amDrillStrike) ) then
  1500 		updatePlacementDisplay(1)
  1504 		if CurrentHedgehog ~= nil or band(GetState(CurrentHedgehog), gstHHDriven) ~= 0 then
       
  1505 			updatePlacementDisplay(1)
       
  1506 		end
  1501 	end
  1507 	end
  1502 
  1508 
  1503 end
  1509 end
  1504 
  1510 
  1505 ----------------------------
  1511 ----------------------------