share/hedgewars/Data/Scripts/Multiplayer/HedgeEditor.lua
changeset 12045 f71e34babe8c
parent 12044 75f56c1198c3
child 12047 7163626748e0
equal deleted inserted replaced
12044:75f56c1198c3 12045:f71e34babe8c
  1647 	local specialFlag = nil
  1647 	local specialFlag = nil
  1648 	local arrayList = nil
  1648 	local arrayList = nil
  1649 
  1649 
  1650 	if GetGearType(gear) == gtMine then
  1650 	if GetGearType(gear) == gtMine then
  1651 
  1651 
       
  1652 		temp = 	"	tempG = AddGear(" ..
       
  1653 			GetX(gear) .. ", " ..
       
  1654 			GetY(gear) .. ", gtMine, 0, 0, 0, 0)"
       
  1655 		table.insert(mineList, temp)
       
  1656 		table.insert(mineList, "	SetTimer(tempG, " .. GetTimer(gear) .. ")")
       
  1657 		if (GetHealth(gear) == 0) then
       
  1658 			table.insert(mineList, "	SetHealth(tempG, 0)")
       
  1659 			local _, damage
       
  1660 			_,_,_,_,_,_,_,_,_,_,_,damage = GetGearValues(gear)
       
  1661 			if damage ~= 0 then
       
  1662 				table.insert(mineList, "	SetGearValues(tempG, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, "..damage..")")
       
  1663 			end
       
  1664 		end
  1652 		if (getGearValue(gear, "tag") ~= nil) then
  1665 		if (getGearValue(gear, "tag") ~= nil) then
  1653 			temp = 	"	tempG = AddGear(" ..
       
  1654 				GetX(gear) .. ", " ..
       
  1655 				GetY(gear) .. ", gtMine, 0, 0, 0, 0)"
       
  1656 			table.insert(mineList, temp)
       
  1657 			table.insert(mineList, "	SetTimer(tempG, " .. GetTimer(gear) .. ")")
       
  1658 			if (GetHealth(gear) == 0) then
       
  1659 				table.insert(mineList, "	SetHealth(tempG, 0)")
       
  1660 				local _, damage
       
  1661 				_,_,_,_,_,_,_,_,_,_,_,damage = GetGearValues(gear)
       
  1662 				if damage ~= 0 then
       
  1663 					table.insert(mineList, "	SetGearValues(tempG, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, "..damage..")")
       
  1664 				end
       
  1665 			end
       
  1666 			table.insert(mineList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1666 			table.insert(mineList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1667 		else
       
  1668 
       
  1669 			temp = 	"	tempG = AddGear(" ..
       
  1670 				GetX(gear) .. ", " ..
       
  1671 				GetY(gear) .. ", gtMine, 0, 0, 0, "..GetTimer(gear) .. ")"
       
  1672 			table.insert(mineList, temp)
       
  1673 			if (GetHealth(gear) == 0) then
       
  1674 				table.insert(mineList, "	SetHealth(tempG, 0)")
       
  1675 				local _, damage
       
  1676 				_,_,_,_,_,_,_,_,_,_,_,damage = GetGearValues(gear)
       
  1677 				if damage ~= 0 then
       
  1678 					table.insert(mineList, "	SetGearValues(tempG, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, "..damage..")")
       
  1679 				end
       
  1680 			end
       
  1681 
       
  1682 		end
  1667 		end
  1683 
  1668 
  1684 		if 		GetTimer(gear) == 0 then specialFlag = 1
  1669 		if 		GetTimer(gear) == 0 then specialFlag = 1
  1685 		elseif	GetTimer(gear) == 1000 then specialFlag = 2
  1670 		elseif	GetTimer(gear) == 1000 then specialFlag = 2
  1686 		elseif	GetTimer(gear) == 2000 then specialFlag = 3
  1671 		elseif	GetTimer(gear) == 2000 then specialFlag = 3
  1692 	elseif GetGearType(gear) == gtSMine then
  1677 	elseif GetGearType(gear) == gtSMine then
  1693 
  1678 
  1694 		arrayList = sMineList
  1679 		arrayList = sMineList
  1695 		temp = 	"	tempG = AddGear(" ..
  1680 		temp = 	"	tempG = AddGear(" ..
  1696 				GetX(gear) .. ", " ..
  1681 				GetX(gear) .. ", " ..
  1697 				GetY(gear) .. ", gtSMine, 0, 0, 0, " ..
  1682 				GetY(gear) .. ", gtSMine, 0, 0, 0, 0)"
  1698 				GetTimer(gear) ..")"
       
  1699 		table.insert(sMineList, temp)
  1683 		table.insert(sMineList, temp)
       
  1684 		table.insert(sMineList, "	SetTimer(tempG, " .. GetTimer(gear) .. ")")
  1700 		specialFlag = 7
  1685 		specialFlag = 7
  1701 
  1686 
  1702 	elseif GetGearType(gear) == gtAirMine then
  1687 	elseif GetGearType(gear) == gtAirMine then
  1703 
  1688 
       
  1689 		temp = 	"	tempG = AddGear(" ..
       
  1690 			GetX(gear) .. ", " ..
       
  1691 			GetY(gear) .. ", gtAirMine, 0, 0, 0, 0)"
       
  1692 		table.insert(airMineList, temp)
       
  1693 		table.insert(airMineList, "	SetTimer(tempG, " .. GetTimer(gear) .. ")")
       
  1694 		table.insert(airMineList, "	SetGearValues(tempG, nil, nil, " .. GetTimer(gear) .. ")")
  1704 		if (getGearValue(gear, "tag") ~= nil) then
  1695 		if (getGearValue(gear, "tag") ~= nil) then
  1705 			temp = 	"	tempG = AddGear(" ..
       
  1706 				GetX(gear) .. ", " ..
       
  1707 				GetY(gear) .. ", gtAirMine, 0, 0, 0, 0)"
       
  1708 			table.insert(airMineList, temp)
       
  1709 			table.insert(airMineList, "	SetTimer(tempG, " .. GetTimer(gear) .. ")")
       
  1710 			table.insert(airMineList, "	SetGearValues(tempG, nil, nil, " .. GetTimer(gear) .. ")")
       
  1711 			table.insert(airMineList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1696 			table.insert(airMineList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1712 		else
       
  1713 
       
  1714 			temp = 	"	SetTimer(" .. "AddGear(" ..
       
  1715 				GetX(gear) .. ", " ..
       
  1716 				GetY(gear) .. ", gtAirMine, 0, 0, 0, 0)" .. ", " ..
       
  1717 				GetTimer(gear) ..")"
       
  1718 			table.insert(airMineList, temp)
       
  1719 			table.insert(airMineList, "	SetGearValues(tempG, nil, nil, " .. GetTimer(gear) .. ")")
       
  1720 
       
  1721 		end
  1697 		end
  1722 
  1698 
  1723 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1699 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1724 		specialFlag = 8
  1700 		specialFlag = 8
  1725 
  1701 
  1726 	elseif GetGearType(gear) == gtExplosives then
  1702 	elseif GetGearType(gear) == gtExplosives then
  1727 
  1703 
       
  1704 		temp = 	"	tempG = AddGear(" ..
       
  1705 			GetX(gear) .. ", " ..
       
  1706 			GetY(gear) .. ", gtExplosives, 0, 0, 0, 0)"
       
  1707 		table.insert(explosivesList, temp)
       
  1708 		table.insert(explosivesList, "	SetHealth(tempG, " .. GetHealth(gear) .. ")")
  1728 		if (getGearValue(gear, "tag") ~= nil) then
  1709 		if (getGearValue(gear, "tag") ~= nil) then
  1729 			temp = 	"	tempG = AddGear(" ..
       
  1730 				GetX(gear) .. ", " ..
       
  1731 				GetY(gear) .. ", gtExplosives, 0, 0, 0, 0)"
       
  1732 			table.insert(explosivesList, temp)
       
  1733 			table.insert(explosivesList, "	SetHealth(tempG, " .. GetHealth(gear) .. ")")
       
  1734 			table.insert(explosivesList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1710 			table.insert(explosivesList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1735 		else
       
  1736 
       
  1737 			temp = 	"	SetHealth(" .. "AddGear(" ..
       
  1738 				GetX(gear) .. ", " ..
       
  1739 				GetY(gear) .. ", gtExplosives, 0, 0, 0, 0)" .. ", " ..
       
  1740 				GetHealth(gear) ..")"
       
  1741 			table.insert(explosivesList, temp)
       
  1742 
       
  1743 		end
  1711 		end
  1744 
  1712 
  1745 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1713 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1746 
  1714 
  1747 		if 		GetHealth(gear) == 1 then specialFlag = 15
  1715 		if 		GetHealth(gear) == 1 then specialFlag = 15
  1771 
  1739 
  1772 	elseif GetGearType(gear) == gtCase then
  1740 	elseif GetGearType(gear) == gtCase then
  1773 
  1741 
  1774 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1742 		table.insert(previewDataList, "	PreviewPlacedGear(" .. GetX(gear) ..", " ..	GetY(gear) .. ")")
  1775 
  1743 
  1776 		if (GetHealth(gear) ~= nil) and (GetHealth(gear) ~= 0) then
  1744 		if (GetHealth(gear) ~= nil) then
  1777 
  1745 
       
  1746 			temp = 	"	tempG = SpawnHealthCrate(" ..
       
  1747 				GetX(gear) ..", " ..
       
  1748 				GetY(gear) ..", " ..
       
  1749 				GetHealth(gear) .. ")"
       
  1750 			table.insert(healthCrateList, temp)
  1778 			if (getGearValue(gear, "tag") ~= nil) then
  1751 			if (getGearValue(gear, "tag") ~= nil) then
  1779 				temp = 	"	tempG = SpawnHealthCrate(" ..
       
  1780 					GetX(gear) ..", " ..
       
  1781 					GetY(gear) ..
       
  1782 					")"
       
  1783 				table.insert(healthCrateList, temp)
       
  1784 				table.insert(healthCrateList, "	SetHealth(tempG, " .. GetHealth(gear) .. ")")
       
  1785 				table.insert(healthCrateList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1752 				table.insert(healthCrateList, "	setGearValue(tempG, \"tag\", \"" .. getGearValue(gear,"tag") .. "\")")
  1786 			else
       
  1787 				temp = 	"	SetHealth(SpawnHealthCrate(" ..
       
  1788 					GetX(gear) ..", " ..
       
  1789 					GetY(gear) ..
       
  1790 					"), " ..
       
  1791 					GetHealth(gear) ..")"
       
  1792 				table.insert(healthCrateList, temp)
       
  1793 			end
  1753 			end
  1794 
  1754 
  1795 			if 		GetHealth(gear) == 25 then specialFlag = 9
  1755 			if 		GetHealth(gear) == 25 then specialFlag = 9
  1796 			elseif	GetHealth(gear) == 50 then specialFlag = 10
  1756 			elseif	GetHealth(gear) == 50 then specialFlag = 10
  1797 			elseif	GetHealth(gear) == 75 then specialFlag = 11
  1757 			elseif	GetHealth(gear) == 75 then specialFlag = 11