Advertisement
Guest User

Untitled

a guest
May 15th, 2016
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.60 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. int w=100, h=20;
  6.  
  7. class Obiekt
  8. {
  9. public:
  10.     int x,y;
  11. public:
  12.  
  13.     int GetX()
  14.     {
  15.         return x;
  16.     }
  17.  
  18.     int GetY()
  19.     {
  20.         return y;
  21.     }
  22.  
  23.     Obiekt(int x1=1, int y1=1)
  24.     {
  25.         x = x1;
  26.         y = y1;
  27.     }
  28. };
  29.  
  30. class Tail : public Obiekt
  31. {
  32. public:
  33.     enum Dir{up, down, left, right};
  34.     Dir direction;
  35.  
  36.     void Move()
  37.     {
  38.         switch(direction)
  39.         {
  40.         case up:
  41.  
  42.             break;
  43.         case down:
  44.  
  45.             break;
  46.         case left:
  47.  
  48.             break;
  49.         default:
  50.  
  51.             break;
  52.         }
  53.     }
  54.     void SetDir(Dir dir)
  55.     {
  56.         direction = dir;
  57.     }
  58.  
  59.     int GetDir()
  60.     {
  61.         return direction;
  62.     }
  63.  
  64.     Tail(int x1=1, int y1=1, Dir dire=up)
  65.     {
  66.         x = x1;
  67.         y = y1;
  68.         SetDir(dire);
  69.     }
  70. };
  71.  
  72. Tail tailParts[0];
  73. ////////////////////////////////////////////////////////////////////////////ZMIANA WIELKOŚCI TABLICY
  74. void AddPartToTailArray(Tail tail)
  75. {
  76.     //create secondary array
  77.     Tail OldTailArray[sizeof(tailParts)/sizeof(*tailParts)+1];
  78.  
  79.     //copy elements from tailParts[] to OldTailArray[]
  80.     for(int i=0; i<sizeof(OldTailArray)/sizeof(*OldTailArray); i++)
  81.     {
  82.         OldTailArray[i] = tailParts[i];
  83.     }
  84.     //add the new element to the new Array
  85.     OldTailArray[sizeof(OldTailArray)/sizeof(*OldTailArray)] = tail;
  86.     //destroy old Array
  87.     delete(tailParts);
  88.  
  89.     //create new Array
  90.     Tail tailParts[sizeof(OldTailArray)/sizeof(*OldTailArray)];
  91.  
  92.     //Replace all elements
  93.     for(int i=0; i<sizeof(OldTailArray)/sizeof(*OldTailArray); i++)
  94.     {
  95.         tailParts[i] = OldTailArray[i];
  96.     }
  97.  
  98.     //and of course destroy secondary Array
  99.     delete(OldTailArray);
  100. }
  101. ////////////////////////////////////////////////////////////////////////////
  102. class Snake : public Tail
  103. {
  104. protected:
  105.     int length;
  106. public:
  107.  
  108.     Snake(int x1,int y1,int l1, Dir dire=up)
  109.     {
  110.         length = l1;
  111.         x = x1;
  112.         y = y1;
  113.     }
  114. };
  115.  
  116.  
  117. Snake player(1, 1, 1);
  118. Tail tail1(4,4);
  119. Tail tail2(2,3);
  120. Tail tail3(4,6);
  121.  
  122. int main()
  123. {
  124.     AddPartToTailArray(tail1);
  125.     AddPartToTailArray(tail2);
  126.     AddPartToTailArray(tail3);
  127.  
  128.     for(int i=0; i<sizeof(tailParts)/sizeof(*tailParts); i++)
  129.     {
  130.         cout << tailParts[i].x;
  131.     }
  132. /*
  133.     for(int i=1; i<h; i++){
  134.         for(int a=1; a< w; a++)
  135.         {
  136.             if(i==1 || i==h-1 || a == 1 || a == w-1)
  137.             {
  138.                 cout << "|";
  139.             }
  140.             else cout << " ";
  141.         }
  142.     cout << endl;
  143.     }*/
  144. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement