Exemplo n.º 1
0
void pawsCharacterPickerWindow::SelectCharacter(int character)
{        
    if(!gotStrings)
        return;

    pawsWidget* wdg;
// char number chetty
    for (int i = 0;i < 1; i++)
    {
        csString name;
        name = "ImgCharacter";
        name += i;
        wdg = FindWidget(name);
        if (!wdg)
            return;

        if (character == i && charactersFound != 0 )
            wdg->SetBackground("radioon2");
        else
            wdg->SetBackground("radiooff2");
    }
    view->Show();
    if ( charactersFound == 0 )
        return;
        
    pawsButton* loginWidget = (pawsButton*)FindWidget("login");
    csString name;
    name.Format("SelectCharacter%i", character);
    pawsWidget* box = FindWidget(name);    
    if ( box )    
        selectedCharacter = box->GetID();
    else 
        selectedCharacter = 0;        
    
    if(gotStrings)
        loginWidget->SetText( PawsManager::GetSingleton().Translate("Join") );
            
    // If the button selected has an empty character then button will
    // be for creating a new character
    if ( selectedCharacter >= charactersFound  )
    {
        return;
    }
    else
    {
        // Show the model for the selected character.
        loaded = false;
        view->Show();
        charApp->SetMesh(0);
        CheckLoadStatus();
    }
}
Exemplo n.º 2
0
void pawsCharacterPickerWindow::SelectCharacter(int character, pawsWidget* widget)
{
    if(!gotStrings)
        return;

    pawsWidget* wdg;
// change 4 to 1 get char chetty
    for (int i = 0;i < 1; i++)
    {
        csString name;
        name = "ImgCharacter";
        name += i;
        wdg = FindWidget(name);
        if (!wdg)
            return;

        if (character == i)
            wdg->SetBackground("radioon2");
        else
            wdg->SetBackground("radiooff2");
    }

    pawsButton* loginWidget = (pawsButton*)FindWidget("login");

    selectedCharacter = widget->GetID();                                    
    loginWidget->SetText( PawsManager::GetSingleton().Translate("Join") );
                
    // If the button selected has an empty character then button will
    // be for creating a new character
    if ( widget->GetID() >= charactersFound  )
    {            
        SetupCharacterCreationScreens();
    }
    else
    {
        // Show the model for the selected character.
        loaded = false;
        charApp->SetMesh(0);
        CheckLoadStatus();
    }
}
Exemplo n.º 3
0
void pawsSummaryWindow::SetVerify( csArray<psCharVerificationMesg::Attribute> stats,
                                   csArray<psCharVerificationMesg::Attribute> skills )
{
    statsList->Clear();
    skillsList->Clear();
    
    for ( size_t x = 0; x < skills.GetSize(); x++ )
    {       
        if (skills[x].value)
        {
            pawsListBoxRow* row = skillsList->NewRow();
            pawsTextBox* name = (pawsTextBox*)row->GetColumn(0);
            name->SetText( skills[x].name );

            pawsTextBox* val = (pawsTextBox*)row->GetColumn(1);
            val->FormatText( "%d", skills[x].value );
        }
    }
    
    for ( size_t x = 0; x < stats.GetSize(); x++ )
    {       
        if (stats[x].value)
        {
            pawsListBoxRow* row = statsList->NewRow();
            pawsTextBox* name = (pawsTextBox*)row->GetColumn(0);
            name->SetText( stats[x].name );
                       
            pawsTextBox* val = (pawsTextBox*)row->GetColumn(1);
            val->FormatText( "%d", stats[x].value );
        }
    }
     
    serverStatus->SetText(PawsManager::GetSingleton().Translate("Verification complete"));     
    //load the model
    loaded = false;
    CheckLoadStatus();
}
Exemplo n.º 4
0
bool pawsGMSpawnWindow::OnSelected(pawsWidget* widget)
{
    pawsTreeNode* node = (pawsTreeNode*)widget;
    if(node->GetFirstChild() != NULL)
        return true;

    if(!modwindow)
    {
        modwindow = (pawsModsWindow*)PawsManager::GetSingleton().FindWidget("ModsWindow");
        if(!modwindow)
            return true;
    }
    if(strcmp(node->GetParent()->GetName(),"TypesRoot"))
    {
        // If already selected, nothing to do.
        if(currentItem == node->GetName())
            return true;

        Item item;
        for(size_t i = 0;i < items.GetSize();i++)
        {
            if(items.Get(i).name == node->GetName())
            {
                item = items.Get(i);
                break;
            }
        }

        if ( !item.mesh )
        {
            objView->Clear();
        }
        else
        {
            factName = item.mesh;
            psengine->GetCelClient()->replaceRacialGroup(factName);
            loaded = false;
            CheckLoadStatus();
        }

        // set stuff
        itemName->SetText(item.name);
        itemCount->SetText("1");
        itemCount->Show();
        itemQuality->SetText("0");
        itemQuality->Show();
        itemImage->Show();
        itemImage->SetBackground(item.icon);
        if (!item.icon || (itemImage->GetBackground() != item.icon)) // if setting the background failed...hide it
            itemImage->Hide();
        itemName->SetText(item.name);
        pawsWidget* spawnBtn = FindWidget("Spawn");
        spawnBtn->Show();
        cbLockable->SetState(false);
        cbLocked->SetState(false);
        cbPickupable->SetState(true);
        cbPickupableWeak->SetState(true);
        cbCollidable->SetState(false);
        cbUnpickable->SetState(false);
        cbTransient->SetState(true);
        cbSettingItem->SetState(false);
        cbNPCOwned->SetState(false);
        lockSkill->SetText("Lockpicking");
        lockStr->SetText("5");
        imagename->SetText(item.icon);
        factname->SetText(item.mesh);
        meshname->SetText(item.name);
        modname[psGMSpawnMods::ITEM_PREFIX]->SetText("");
        modname[psGMSpawnMods::ITEM_SUFFIX]->SetText("");
        modname[psGMSpawnMods::ITEM_ADJECTIVE]->SetText("");
        mods[psGMSpawnMods::ITEM_PREFIX] = 0;
        mods[psGMSpawnMods::ITEM_SUFFIX] = 0;
        mods[psGMSpawnMods::ITEM_ADJECTIVE] = 0;

        cbLockable->Show();
        cbLocked->Show();
        cbPickupable->Show();
        cbPickupableWeak->Show();
        cbCollidable->Show();
        cbUnpickable->Show();
        cbTransient->Show();
        cbSettingItem->Show();
        cbNPCOwned->Show();
        lockStr->Hide();
        lockSkill->Hide();
        imagename->Show();
        meshname->Show();
        factname->Show();
        modname[psGMSpawnMods::ITEM_PREFIX]->Show();
        modname[psGMSpawnMods::ITEM_SUFFIX]->Show();
        modname[psGMSpawnMods::ITEM_ADJECTIVE]->Show();

        //No devs can't use those flags. It's pointless hacking here as the server double checks
        if(psengine->GetCelClient()->GetMainPlayer()->GetType() < 30)
        {
            cbSettingItem->Hide();
            cbNPCOwned->Hide();
        }

        modwindow->Hide();
        currentItem = item.name;
        return true;
    }

    modwindow->Hide();
    currentItem.Clear();

    psGMSpawnItems msg(widget->GetName());
    msg.SendMessage();

    return true;
}