| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 |
- /*
- * CDrawRoadsOperation.cpp, part of VCMI engine
- *
- * Authors: listed in file AUTHORS in main folder
- *
- * License: GNU General Public License v2.0 or later
- * Full text of license available in license.txt file, in main folder
- *
- */
- #include "StdInc.h"
- #include "CDrawRoadsOperation.h"
- const std::vector<CDrawRoadsOperation::RoadPattern> CDrawRoadsOperation::rules =
- {
- //single tile. fallback patern
- {
- {
- "-","-","-",
- "-","+","-",
- "-","-","-"
- },
- {14,14},
- {9,9},
- false,
- false
- },
- //Road straight with angle
- {
- {
- "?","-","+",
- "-","+","+",
- "+","+","?"
- },
- {2,5},
- {-1,-1},
- true,
- true
- },
- //Turn
- {
- {
- "?","-","?",
- "-","+","+",
- "?","+","?"
- },
- {0,1},
- {0,3},
- true,
- true
- },
- //Dead end horizontal
- {
- {
- "?","-","?",
- "-","+","+",
- "?","-","?"
- },
- {15,15},{11,12},
- false,
- true
- },
- //Dead end vertical
- {
- {
- "?","-","?",
- "-","+","-",
- "?","+","?"
- },
- {14,14},{9,10},
- true,
- false
- },
- //T-cross horizontal
- {
- {
- "?","+","?",
- "-","+","+",
- "?","+","?"
- },
- {6,7},{7,8},
- false,
- true
- },
- //T-cross vertical
- {
- {
- "?","-","?",
- "+","+","+",
- "?","+","?"
- },
- {8,9},{5,6},
- true,
- false
- },
- //Straight Horizontal
- {
- {
- "?","-","?",
- "+","+","+",
- "?","-","?"
- },
- {12,13},{11,12},
- false,
- false
- },
- //Straight Vertical
- {
- {
- "?","+","?",
- "-","+","-",
- "?","+","?"
- },
- {10,11},{9,10},
- false,
- false
- },
- //X-cross
- {
- {
- "?","+","?",
- "+","+","+",
- "?","+","?"
- },
- {16,16},{4,4},
- false,
- false
- }
-
- };
- ///CDrawRoadsOperation
- CDrawRoadsOperation::CDrawRoadsOperation(CMap * map, const CTerrainSelection & terrainSel, ERoadType::ERoadType roadType, CRandomGenerator * gen):
- CMapOperation(map),terrainSel(terrainSel), roadType(roadType), gen(gen)
- {
-
- }
- void CDrawRoadsOperation::execute()
- {
-
- }
- void CDrawRoadsOperation::undo()
- {
- //TODO
- }
- void CDrawRoadsOperation::redo()
- {
- //TODO
- }
- std::string CDrawRoadsOperation::getLabel() const
- {
- return "Draw Roads";
- }
|