// Map the given string to an attribute enum from TAttributeType, // or EatNone if invalid. TAttributeType TAttributeMap::attributeFromName(const TString& name) { // These are case insensitive. TString lowername(name); std::transform(lowername.begin(), lowername.end(), lowername.begin(), ::tolower); if (lowername == "allow_uav_condition") return EatAllow_uav_condition; else if (lowername == "branch") return EatBranch; else if (lowername == "call") return EatCall; else if (lowername == "domain") return EatDomain; else if (lowername == "earlydepthstencil") return EatEarlyDepthStencil; else if (lowername == "fastopt") return EatFastOpt; else if (lowername == "flatten") return EatFlatten; else if (lowername == "forcecase") return EatForceCase; else if (lowername == "instance") return EatInstance; else if (lowername == "maxtessfactor") return EatMaxTessFactor; else if (lowername == "maxvertexcount") return EatMaxVertexCount; else if (lowername == "numthreads") return EatNumThreads; else if (lowername == "outputcontrolpoints") return EatOutputControlPoints; else if (lowername == "outputtopology") return EatOutputTopology; else if (lowername == "partitioning") return EatPartitioning; else if (lowername == "patchconstantfunc") return EatPatchConstantFunc; else if (lowername == "unroll") return EatUnroll; else return EatNone; }
GameEntity* Room::FindPlayer(std::string name) const { std::vector<GameEntity*> players = players_->GetEntityVector(); std::string lowername(name); for (size_t i = 0; i < lowername.length(); ++i) { lowername.at(i) = std::tolower(lowername.at(i)); } for (GameEntity* p : players) { std::string pName(p->GetName()); for (size_t i = 0; i < pName.length(); ++i) { pName.at(i) = std::tolower(pName.at(i)); } if (pName == lowername) { return p; } } return nullptr; }
GameEntity * Room::FindMob(std::string name) const { std::vector<GameEntity*> mobs = mobs_->GetEntityVector(); std::string lowername(name); for (size_t i = 0; i < lowername.length(); ++i) { lowername.at(i) = std::tolower(lowername.at(i)); } for (GameEntity* m : mobs) { std::string pName(m->GetName()); for (size_t i = 0; i < pName.length(); ++i) { pName.at(i) = std::tolower(pName.at(i)); } if (pName == lowername) { return m; } } return nullptr; }
// Map the given string to an attribute enum from TAttributeType, // or EatNone if invalid. TAttributeType TAttributeMap::attributeFromName(const TString& nameSpace, const TString& name) { // These are case insensitive. TString lowername(name); std::transform(lowername.begin(), lowername.end(), lowername.begin(), ::tolower); TString lowernameSpace(nameSpace); std::transform(lowernameSpace.begin(), lowernameSpace.end(), lowernameSpace.begin(), ::tolower); // handle names within a namespace if (lowernameSpace == "vk") { if (lowername == "input_attachment_index") return EatInputAttachment; else if (lowername == "location") return EatLocation; else if (lowername == "binding") return EatBinding; else if (lowername == "global_cbuffer_binding") return EatGlobalBinding; } else if (lowernameSpace.size() > 0) return EatNone; // handle names with no namespace if (lowername == "allow_uav_condition") return EatAllow_uav_condition; else if (lowername == "branch") return EatBranch; else if (lowername == "call") return EatCall; else if (lowername == "domain") return EatDomain; else if (lowername == "earlydepthstencil") return EatEarlyDepthStencil; else if (lowername == "fastopt") return EatFastOpt; else if (lowername == "flatten") return EatFlatten; else if (lowername == "forcecase") return EatForceCase; else if (lowername == "instance") return EatInstance; else if (lowername == "maxtessfactor") return EatMaxTessFactor; else if (lowername == "maxvertexcount") return EatMaxVertexCount; else if (lowername == "numthreads") return EatNumThreads; else if (lowername == "outputcontrolpoints") return EatOutputControlPoints; else if (lowername == "outputtopology") return EatOutputTopology; else if (lowername == "partitioning") return EatPartitioning; else if (lowername == "patchconstantfunc") return EatPatchConstantFunc; else if (lowername == "unroll") return EatUnroll; else if (lowername == "loop") return EatLoop; else return EatNone; }