コード例 #1
0
std::string ItemEffect::oneline_str()
{

    std::string result = "";
    std::vector<std::string> string_vec;

    string_vec.push_back(this->small_convert("HCV: ", (long double)this->health_current_val));
    string_vec.push_back(this->small_convert("HMV: ", (long double)this->health_max_val));
    string_vec.push_back(this->small_convert("HRR: ", (long double)this->health_regen_rate));
    string_vec.push_back(this->small_convert("HRI: ", (long double)this->health_regen_interval));

    string_vec.push_back(this->small_convert("MCV: ", (long double)this->mana_current_val));
    string_vec.push_back(this->small_convert("MMV: ", (long double)this->mana_max_val));
    string_vec.push_back(this->small_convert("MRR: ", (long double)this->mana_regen_rate));
    string_vec.push_back(this->small_convert("MRI: ", (long double)this->mana_regen_interval));

    string_vec.push_back(this->small_convert("ACV: ", (long double)this->armor_current_val));
    string_vec.push_back(this->small_convert("AMV: ", (long double)this->armor_max_val));
    string_vec.push_back(this->small_convert("ARR: ", (long double)this->armor_regen_rate));
    string_vec.push_back(this->small_convert("ARI: ", (long double)this->armor_regen_interval));

    string_vec.push_back(this->small_convert("DCV: ", (long double)this->damage_current_val));
    string_vec.push_back(this->small_convert("DMV: ", (long double)this->damage_max_val));
    string_vec.push_back(this->small_convert("DRR: ", (long double)this->damage_regen_rate));
    string_vec.push_back(this->small_convert("DRI: ", (long double)this->damage_regen_interval));

    return StringJoin(string_vec, ' ', true);

};
コード例 #2
0
std::string ItemEffect::full_str()
{

    std::string result = "";
    std::vector<std::string> string_vec;

    string_vec.push_back("HCV: "+std::to_string((long double)this->health_current_val));
    string_vec.push_back("HMV: "+std::to_string((long double)this->health_max_val));
    string_vec.push_back("HRR: "+std::to_string((long double)this->health_regen_rate));
    string_vec.push_back("HRI: "+std::to_string((long double)this->health_regen_interval));

    string_vec.push_back("MCV: "+std::to_string((long double)this->mana_current_val));
    string_vec.push_back("MMV: "+std::to_string((long double)this->mana_max_val));
    string_vec.push_back("MRR: "+std::to_string((long double)this->mana_regen_rate));
    string_vec.push_back("MRI: "+std::to_string((long double)this->mana_regen_interval));

    string_vec.push_back("ACV: "+std::to_string((long double)this->armor_current_val));
    string_vec.push_back("AMV: "+std::to_string((long double)this->armor_max_val));
    string_vec.push_back("ARR: "+std::to_string((long double)this->armor_regen_rate));
    string_vec.push_back("ARI: "+std::to_string((long double)this->armor_regen_interval));

    string_vec.push_back("DCV: "+std::to_string((long double)this->damage_current_val));
    string_vec.push_back("DMV: "+std::to_string((long double)this->damage_max_val));
    string_vec.push_back("DRR: "+std::to_string((long double)this->damage_regen_rate));
    string_vec.push_back("DRI: "+std::to_string((long double)this->damage_regen_interval));

    return StringJoin(string_vec, '\n', false);

};
コード例 #3
0
ファイル: utils.cpp プロジェクト: IngussNeilands/BiochRL
std::string get_config_path()
{
    //ex: C:\Users\Mark\Documents\Visual Studio
    //2010\Projects\FirstCPPApplication\Debug\BiochRL++.exe
    std::string exepath = get_exe_path();
    std::vector<std::string> exesplit = StringSplit(exepath, kPathSeparator);

    exesplit.pop_back();
    std::string data = "config";
    data+=kPathSeparator;
    exesplit.push_back(data);

    return StringJoin(exesplit, kPathSeparator, false);
};
コード例 #4
0
ファイル: cs_group.cpp プロジェクト: Delicate90/TrinityCore
    static bool HandleGroupListCommand(ChatHandler* handler, char const* args)
    {
        // Get ALL the variables!
        Player* playerTarget;
        ObjectGuid guidTarget;
        std::string nameTarget;
        std::string zoneName;
        const char* onlineState = "";

        // Parse the guid to uint32...
        ObjectGuid parseGUID = ObjectGuid::Create<HighGuid::Player>(strtoull(args, nullptr, 10));

        // ... and try to extract a player out of it.
        if (ObjectMgr::GetPlayerNameByGUID(parseGUID, nameTarget))
        {
            playerTarget = ObjectAccessor::FindPlayer(parseGUID);
            guidTarget = parseGUID;
        }
        // If not, we return false and end right away.
        else if (!handler->extractPlayerTarget((char*)args, &playerTarget, &guidTarget, &nameTarget))
            return false;

        // Next, we need a group. So we define a group variable.
        Group* groupTarget = NULL;

        // We try to extract a group from an online player.
        if (playerTarget)
            groupTarget = playerTarget->GetGroup();

        // If not, we extract it from the SQL.
        if (!groupTarget)
        {
            PreparedStatement* stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_GROUP_MEMBER);
            stmt->setUInt64(0, guidTarget.GetCounter());
            PreparedQueryResult resultGroup = CharacterDatabase.Query(stmt);
            if (resultGroup)
                groupTarget = sGroupMgr->GetGroupByDbStoreId((*resultGroup)[0].GetUInt32());
        }

        // If both fails, players simply has no party. Return false.
        if (!groupTarget)
        {
            handler->PSendSysMessage(LANG_GROUP_NOT_IN_GROUP, nameTarget.c_str());
            handler->SetSentErrorMessage(true);
            return false;
        }

        // We get the group members after successfully detecting a group.
        Group::MemberSlotList const& members = groupTarget->GetMemberSlots();

        // To avoid a cluster f**k, namely trying multiple queries to simply get a group member count...
        handler->PSendSysMessage(LANG_GROUP_TYPE, (groupTarget->isRaidGroup() ? "raid" : "party"), std::to_string(members.size()).c_str());
        // ... we simply move the group type and member count print after retrieving the slots and simply output it's size.

        // While rather dirty codestyle-wise, it saves space (if only a little). For each member, we look several informations up.
        for (Group::MemberSlotList::const_iterator itr = members.begin(); itr != members.end(); ++itr)
        {
            // Define temporary variable slot to iterator.
            Group::MemberSlot const& slot = *itr;

            // Check for given flag and assign it to that iterator
            std::string flags;
            if (slot.flags & MEMBER_FLAG_ASSISTANT)
                flags = "Assistant";

            if (slot.flags & MEMBER_FLAG_MAINTANK)
            {
                if (!flags.empty())
                    flags.append(", ");
                flags.append("MainTank");
            }

            if (slot.flags & MEMBER_FLAG_MAINASSIST)
            {
                if (!flags.empty())
                    flags.append(", ");
                flags.append("MainAssist");
            }

            if (flags.empty())
                flags = "None";

            // Check if iterator is online. If is...
            Player* p = ObjectAccessor::FindPlayer((*itr).guid);
            std::string phases;
            if (p)
            {
                // ... than, it prints information like "is online", where he is, etc...
                onlineState = "online";
                phases = StringJoin(p->GetPhases(), ", ");

                AreaTableEntry const* area = sAreaTableStore.LookupEntry(p->GetAreaId());
                if (area)
                {
                    AreaTableEntry const* zone = sAreaTableStore.LookupEntry(area->ParentAreaID);
                    if (zone)
                        zoneName = zone->AreaName->Str[handler->GetSessionDbcLocale()];
                }
            }
            else
            {
                // ... else, everything is set to offline or neutral values.
                zoneName    = "<ERROR>";
                onlineState = "Offline";
            }

            // Now we can print those informations for every single member of each group!
            handler->PSendSysMessage(LANG_GROUP_PLAYER_NAME_GUID, slot.name.c_str(), onlineState,
                zoneName.c_str(), phases.c_str(), slot.guid.ToString().c_str(), flags.c_str(),
                lfg::GetRolesString(slot.roles).c_str());
        }

        // And finish after every iterator is done.
        return true;
    }
コード例 #5
0
std::string AttributeContainer::PrettyPrint()
{
    return StringJoin(this->PrettyVector(), '\n', false);
};
コード例 #6
0
ファイル: names.cpp プロジェクト: saltstar/smartnix
std::string NameLibraryCHeader(const std::vector<StringView>& library_name) {
    return StringJoin(library_name, "/") + "/c/fidl.h";
}
コード例 #7
0
ファイル: names.cpp プロジェクト: saltstar/smartnix
std::string NameLibrary(const std::vector<StringView>& library_name) {
    return StringJoin(library_name, ".");
}