GeneticDropSeedAction::GeneticDropSeedAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_DropSeed) { setBodypart(p_bp); int result; description->Attribute("blockParentSpawnpoint",&result); if(result == 1) { blockParentSpawnpointForBodyparttype = true; } else { blockParentSpawnpointForBodyparttype = false; } };
GeneticAddSpawnpointAction::GeneticAddSpawnpointAction(std::list<BodypartType> param_bodypartTypes, int param_position, float p_scaleModifier, float param_ang2d, float p_ang2, float p_rot, bool p_symetric, bool p_active, Bodypart* param_bodypart): GeneticAction(GAT_AddSpawnpoint), spawnpointAdded(false) { setBodypart(param_bodypart); sp = new SpawnpointInformation(); sp->supportedBpTypes = param_bodypartTypes; sp->position = param_position; sp->occupied = false; sp->ang2d = param_ang2d; sp->ang2 = p_ang2; sp->rot = p_rot; sp->scaleModifier= p_scaleModifier; symetric = p_symetric; active = p_active; };
GeneticEmptyChemicalStorageAction::GeneticEmptyChemicalStorageAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_ChemicalConsume) { setBodypart(p_bp); };
GeneticEmptyChemicalStorageAction::GeneticEmptyChemicalStorageAction(Bodypart* param_bodypart):GeneticAction(GAT_ChemicalConsume) { setBodypart(param_bodypart); };
GeneticChemicalConsumeAction::GeneticChemicalConsumeAction(std::string nChemName, float nAmount, Bodypart* p_bp): GeneticAction(GAT_ChemicalConsume), chemName(nChemName), amount(nAmount) { verify(); setBodypart(p_bp); };
GeneticDieAction::GeneticDieAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_Die) { setBodypart(p_bp); };
GeneticSpawnBodypartAction::GeneticSpawnBodypartAction(BodypartType param_childBodypartType, Bodypart* param_parentBodypart): GeneticAction(GAT_SpawnBP), childBodypartType(param_childBodypartType) { setBodypart(param_parentBodypart); };
GeneticSpawnParentAction::GeneticSpawnParentAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_SpawnParentBP) { setBodypart(p_bp); int type; description->QueryIntAttribute("Type",&type); typeToSpawn = (BodypartType)type; };
GeneticHealParentAction::GeneticHealParentAction(float param_amount, Bodypart* p_bp): GeneticAction(GAT_Heal) { setBodypart(p_bp); amount = param_amount; };
GeneticSimpleMutateAction::GeneticSimpleMutateAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_Mutate) { description->QueryFloatAttribute("Strength",&strength); setBodypart(p_bp); };
GeneticShrinkAction::GeneticShrinkAction(float param_amount, Bodypart* param_bodypart): GeneticAction(GAT_Shrink) { setBodypart(param_bodypart); amount = param_amount; };
GeneticGrowAction::GeneticGrowAction(float param_amount, Bodypart* param_bodypart): GeneticAction(GAT_Grow) { setBodypart(param_bodypart); amount = param_amount; };
GeneticChangeMaxChemicalAmountAction::GeneticChangeMaxChemicalAmountAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_ChangeMaxChemAmount) { chemName = description->Attribute("Name"); description->QueryFloatAttribute("Value",&value); setBodypart(p_bp); };
GeneticChangeMaxChemicalAmountAction::GeneticChangeMaxChemicalAmountAction(std::string param_chemicalName, float param_value, Bodypart* param_bodypart): GeneticAction(GAT_ChangeMaxChemAmount), chemName(param_chemicalName), value(param_value) { setBodypart(param_bodypart); };
GeneticChangeMaxSizeAction::GeneticChangeMaxSizeAction(float param_amount, Bodypart* param_bodypart):GeneticAction(GAT_ChangeMaxSize) { setBodypart(param_bodypart); amount = param_amount; };
GeneticHealAction::GeneticHealAction(float param_amount, Bodypart* param_bodypart): GeneticAction(GAT_Heal) { setBodypart(param_bodypart); amount = param_amount; };
GeneticChangeMaxSizeAction::GeneticChangeMaxSizeAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_ChangeMaxSize) { description->QueryFloatAttribute("Amount",&amount); setBodypart(p_bp); };
GeneticHealAction::GeneticHealAction(TiXmlElement* description, Bodypart* p_bp): GeneticAction(GAT_Heal) { description->QueryFloatAttribute("Amount",&amount); setBodypart(p_bp); };
GeneticSimpleChemicalConvertAction::GeneticSimpleChemicalConvertAction( std::string nFromChemName, std::string nToChemName, float nAmount, float nRatio, Bodypart* p_bp): GeneticAction(GAT_SimpleConvert), fromChemName(nFromChemName), toChemName(nToChemName), amount(nAmount), ratio(nRatio) { verify(); setBodypart(p_bp); };
GeneticDieAction::GeneticDieAction(Bodypart* param_bodypart):GeneticAction(GAT_Die) { setBodypart(param_bodypart); };
int ControlPanel::handleEvent (mxEvent *event) { MDLCACHE_CRITICAL_SECTION_( g_pMDLCache ); int iret = 0; if ( HandleToolEvent( event ) ) { return iret; } switch ( event->event ) { case mxEvent::Size: { PositionControls( event->width, event->height ); iret = 1; } break; case mxEvent::Action: { iret = 1; switch (event->action) { case IDC_TOOLSDRIVEMOUTH: { g_viewerSettings.faceposerToolsDriveMouth = ((mxCheckBox *)event->widget)->isChecked(); } break; case IDC_TAB: { g_viewerSettings.showTexture = (tab->getSelectedIndex() == 3); } break; case IDC_RENDERMODE: { int index = cRenderMode->getSelectedIndex(); if (index >= 0) { setRenderMode (index); } } break; case IDC_GROUND: setShowGround (((mxCheckBox *) event->widget)->isChecked()); break; case IDC_MOVEMENT: setShowMovement (((mxCheckBox *) event->widget)->isChecked()); break; case IDC_BACKGROUND: setShowBackground (((mxCheckBox *) event->widget)->isChecked()); break; case IDC_HITBOXES: g_viewerSettings.showHitBoxes = ((mxCheckBox *) event->widget)->isChecked(); break; case IDC_PHYSICSMODEL: g_viewerSettings.showPhysicsModel = ((mxCheckBox *) event->widget)->isChecked(); break; case IDC_BONES: g_viewerSettings.showBones = ((mxCheckBox *) event->widget)->isChecked(); break; case IDC_ATTACHMENTS: g_viewerSettings.showAttachments = ((mxCheckBox *) event->widget)->isChecked(); break; case IDC_SEQUENCE: { int index = cSequence->getSelectedIndex(); if (index >= 0) { setSequence ( index ); } } break; case IDC_SPEEDSCALE: { g_viewerSettings.speedScale = ((mxSlider *) event->widget)->getValue(); lSpeedScale->setLabel( va( "Speed scale %.2f", g_viewerSettings.speedScale ) ); } break; case IDC_PRIMARYBLEND: { setBlend( 0, ((mxSlider *) event->widget)->getValue() ); } break; case IDC_SECONDARYBLEND: { setBlend( 1, ((mxSlider *) event->widget)->getValue() ); } break; case IDC_BODYPART: { int index = cBodypart->getSelectedIndex(); if (index >= 0) { setBodypart (index); } } break; case IDC_SUBMODEL: { int index = cSubmodel->getSelectedIndex(); if (index >= 0) { setSubmodel (index); } } break; case IDC_CONTROLLER: { int index = cController->getSelectedIndex(); if (index >= 0) setBoneController (index); } break; case IDC_CONTROLLERVALUE: { int index = cController->getSelectedIndex(); if (index >= 0) setBoneControllerValue (index, slController->getValue()); } break; case IDC_SKINS: { int index = cSkin->getSelectedIndex(); if (index >= 0) { models->GetActiveStudioModel()->SetSkin (index); g_viewerSettings.skin = index; g_pMatSysWindow->redraw(); } } break; default: iret = 0; break; } } } return iret; }
GeneticRegularChemicalConsumeAction::GeneticRegularChemicalConsumeAction(std::string nChemName, float nAmount, int p_maxLifeTime, Bodypart* p_bp): GeneticAction(GAT_ChemicalConsume), chemName(nChemName), amount(nAmount), maxLifeTime(p_maxLifeTime) { verify(); setBodypart(p_bp); };