# kingpinzs

Member

1780

117 Neutral

• Rank
Contributor
1. ## 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. ## 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. ## python collision recursion issue

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. ## 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. ## 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 do I use a class object as a parameter?

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. ## issue with image placement in respect of another image

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. ## 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. ## Need help with a array sequence

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++

I am using a bmp with a mask bmp

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 ); } }

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. ## 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. ## How can data be loaded to a bst?

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. ## 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]