Мне нужно отслеживать положение объектов (ящиков) в сетке для игры, похожей на конфетку, которую я разрабатываю.
Самый простой способ отследить их положение в сетке - добавить их в двухмерный вектор, переместить их внутрь вектора в соответствии с игровой логикой. Это просто.
Сложная часть, и где я на самом деле застрял - это получить их текущую позицию на сетке в любой момент времени или, в данном случае, позицию внутри 2-го вектора.
Короче говоря, если бы у меня был простой способ периодически проверять положение моего объекта Box внутри его 2d-массива, это решило бы проблему.
Я возился с std: find и std: count, но я новичок, и мне трудно. Тот же код ниже:
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
struct position
{
int x;
int y;
};
class Box
{
public:
position currentPosition;
};
int main(int argc, const char * argv[])
{
Box box1 = Box();
Box box2 = Box();
Box box3 = Box();
Box box4 = Box();
Box box5 = Box();
Box box6 = Box();
Box box7 = Box();
Box box8 = Box();
Box box9 = Box();
// vector<vector<Box>> boxes2dVector;
//
vector<vector<Box>> boxes2dVector =
{
{box1, box2,box3},
{box4, box5,box6},
{box7, box8,box9}
};
return 0;
}
position getPositionOfBox (Box box, vector<vector<Box>> vct)
{
position resultPositon;
/*
This is what I need...some code that finds the position in the of a Box object in side a 2d array
*/
return resultPositon;
};
Любые идеи или помощь, кто-нибудь?
Большое спасибо!