Jump to content
  • Advertisement

kingpinzs

Member
  • Content Count

    1780
  • Joined

  • Last visited

Community Reputation

117 Neutral

About kingpinzs

  • Rank
    Contributor
  1. kingpinzs

    python collision recursion issue

    I changed bubbles.remove(bubble1)  to bubbles.discard(bubble1) and I no longer get the error. Thanks every one for taking the time to read my post.
  2. kingpinzs

    python collision recursion issue

    def remove_matching(self, bubbles): bubble_old = [] for bubble in list(bubbles): if self.color == bubble.color and self.collide(bubble): bubble_old = bubble bubbles.remove(bubble) self.touching(bubble_old, bubbles) return True return False this is the method that calls it.  The code works when the bubbles are lined up like this   x O x x O x x O x   O <-current ball      x  O  x x  O  x O O O    O <-current ball   the issue happens with anything like this   O O O O    O <-current ball   I have also tried this def touching(self, bubble, bubbles): for bubble1 in list(bubbles): if self.color == bubble1.color and dist(bubble.pos, bubble1.pos) <= 2 * BUBBLE_RADIUS: bubbles.remove(bubble_old) self.touching(bubble1, bubbles) I got the same error   and this gets this error RuntimeError: Set changed size during iteration  def touching(self, bubble, bubbles): for bubble1 in iter(bubbles): if self.color == bubble1.color and dist(bubble.pos, bubble1.pos) <= 2 * BUBBLE_RADIUS: bubbles.remove(bubble1) self.touching(bubble1, bubbles)
  3. def touching(self, bubble, bubbles): for bubble1 in bubbles: bubble_old = bubble1 if self.color == bubble_old.color and dist(bubble.pos, bubble_old.pos) <= 2 * BUBBLE_RADIUS: bubbles.remove(bubble_old) self.touching(bubble1, bubbles)     The error occurs when there are two rows right next to each that need to be removed. for example like this x x  x  x  x x O O O x x x  O O x x x  O  x x        O <-current ball Traceback (most recent call last):   File "main.py", line 140, in draw     if a_bubble.remove_matching(stuck_bubbles):   File "main.py", line 72, in remove_matching     self.touching(bubble_old, bubbles)   File "main.py", line 81, in touching     self.touching(bubble1, bubbles)   File "main.py", line 80, in touching     bubbles.remove(bubble_old) KeyError: <__main__.Bubble instance at 0x192c878>  
  4. kingpinzs

    How do I use a class object as a parameter?

    Thanks for the help that fixed my issues. all I did    class Monster; // fwd declaration
  5. kingpinzs

    How do I use a class object as a parameter?

    I am getting errors. error: 'Monster' does not name a type error: 'Monster' has not been declared
  6. How does one go about passing a class object as a parameter in another class's method.   e.g. class Player { Monster monster; bool attack(Monster& monster); }   class Monster { //do stuff   }    
  7. I am using XNA 4.0 and c# how can I get an image to set its position according to the end of another image? this is what I have so far rocketPosition = players.Position; rocketPosition.X += players.Position.X +40; rocketPosition.Y -= players.Position.Y -370 ; rocketAngle = players.Angle; Vector2 up = new Vector2(0, -1); Matrix rotMatrix = Matrix.CreateRotationZ(rocketAngle); rocketDirection = Vector2.Transform(up, rotMatrix); rocketDirection *= players.Power / 50.0f; the rocket goes in the right direction but its starting position is wrong if I move the cannon the code that moves the cannon if (keybState.IsKeyDown(Keys.Left)) { if(players.Angle > MathHelper.PiOver4-.3) players.Angle -= 0.01f; } if (keybState.IsKeyDown(Keys.Right)) { if (players.Angle < MathHelper.PiOver2) players.Angle += 0.01f; }
  8. kingpinzs

    Need help with a array sequence

    After thinking about it for a while I came up with this. void sequence::advance( ) { if(is_item()) { if(current_index <= used-1) { ++current_index; } } } but it is still advancing passed the array that has been created.
  9. This is what I need to do // void advance( ) // Precondition: is_item returns true. // Postcondition: If the current item was already the last item in the // sequence, then there is no longer any current item. Otherwise, the new // current item is the item immediately after the original current item. And this is what I did void sequence::advance( ) { if(is_item()) { if(current_index <= used) { ++current_index; } } but it goes passed the actual array data. How can I fix that? I'm using c++
  10. I am using a bmp with a mask bmp
  11. I am using this sample code for now tell I figure out how it all works ODEL *LoadModel(char *filename) { MODEL *model = (MODEL*)malloc(sizeof(MODEL)); LPD3DXBUFFER matbuffer; HRESULT result; //load mesh from the specified file result = D3DXLoadMeshFromX( filename, //filename D3DXMESH_SYSTEMMEM, //mesh options d3ddev, //Direct3D device NULL, //adjacency buffer &matbuffer, //material buffer NULL, //special effects &model->material_count, //number of materials &model->mesh); //resulting mesh if (result != D3D_OK) { MessageBox(NULL, "Error loading model file", "Error", MB_OK); return NULL; } //extract material properties and texture names from material buffer LPD3DXMATERIAL d3dxMaterials = (LPD3DXMATERIAL)matbuffer->GetBufferPointer(); model->materials = new D3DMATERIAL9[model->material_count]; model->textures = new LPDIRECT3DTEXTURE9[model->material_count]; //create the materials and textures for(DWORD i=0; i<model->material_count; i++) { //grab the material model->materials = d3dxMaterials.MatD3D; //set ambient color for material model->materials.Ambient = model->materials.Diffuse; model->textures = NULL; if( d3dxMaterials.pTextureFilename != NULL && lstrlen(d3dxMaterials.pTextureFilename) > 0 ) { //load texture file specified in .x file result = D3DXCreateTextureFromFile(d3ddev, d3dxMaterials.pTextureFilename, &model->textures); if (result != D3D_OK) { MessageBox(NULL, "Could not find texture file", "Error", MB_OK); return NULL; } } } //done using material buffer matbuffer->Release(); return model; } VOID DeleteModel(MODEL *model) { //remove materials from memory if( model->materials != NULL ) delete[] model->materials; //remove textures from memory if (model->textures != NULL) { for( DWORD i = 0; i < model->material_count; i++) { if (model->textures != NULL) model->textures->Release(); } delete[] model->textures; } //remove mesh from memory if (model->mesh != NULL) model->mesh->Release(); //remove model struct from memory if (model != NULL) free(model); } void DrawModel(MODEL *model) { //draw each mesh subset for( DWORD i=0; i<model->material_count; i++ ) { // Set the material and texture for this subset d3ddev->SetMaterial( &model->materials ); d3ddev->SetTexture( 0, model->textures ); // Draw the mesh subset model->mesh->DrawSubset( i ); } }
  12. I am using D3DXLoadMeshFromX and D3DCreateTextureFromFile but it doesnt show transpaerncy with the texture hw can I acomplish this? I am using directx 9c and c++
  13. kingpinzs

    How can data be loaded to a bst?

    how to I load the entire file? It keeps cutting out early. void beginning_tree(binary_tree_node<string>*& current_ptr,ifstream &fin) // Library facilities used: bintree.h, string { string question; bool isLeaf = false; binary_tree_node<string> *child_ptr = current_ptr; if(fin.is_open()) { // if began while(fin.good()) { child_ptr = new binary_tree_node<string>; fin >> isLeaf; fin >> question; if(isLeaf) child_ptr->set_data(question); beginning_tree(child_ptr->left(),fin); beginning_tree(child_ptr->right(),fin); } print(taxonomy_root_ptr,0); } fin.close(); }
  14. this is the file that gets saved from the bst preorder Are you a mammal? Are you bigger than a cat? Kangaroo Do you purr? Cat Mouse Do you live underwater? Trout Robin this is what it needs to load back up like [attachment=2142:bst.jpg] How can I get it to load from top to bottom left to right I am using c++
  15. kingpinzs

    have issue returning pointer data

    So after many many hours the issue has been solved. I just removed [color=#1C2837][font=CourierNew, monospace][size=2][color=#000000] [color=#660066]Root[color=#000000] [color=#666600]=[color=#000000] [color=#000088]new[color=#000000] [color=#660066]TreeNode[color=#666600]([color=#000000]name[color=#666600]); from main and it fixed it all[/font]
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!