Esempio n. 1
0
 void generateHybridBatches()
 {
     for (int i = STANDARD_BATCH_COUNT; i < batches.Length; i++)
     {
         batches[i] = new HybridTaskBatch(randomStandardBatch(), randomStandardBatch());
     }
 }
Esempio n. 2
0
    bool isValidPlacementHybrid(TSPieceID id, HybridTaskBatch hybridBatch, TSGameTile targetTile)
    {
        switch (targetTile.GetMatchCondition)
        {
        case TSMatchCondition.Stimuli1Category1:
            if (id.Stimuli1Image == null)
            {
                return(hybridBatch.IsValidStimuli1Category1(id.Stimuli1));
            }
            else
            {
                return(hybridBatch.IsValidStimuli1Category1(id.Stimuli1Image));
            }

        case TSMatchCondition.Stimuli1Category2:
            if (id.Stimuli1Image == null)
            {
                return(hybridBatch.IsValidStimuli1Category2(id.Stimuli1));
            }
            else
            {
                return(hybridBatch.IsValidStimuli1Category2(id.Stimuli1Image));
            }

        case TSMatchCondition.Stimuli2Category1:
            if (id.Stimuli2Image == null)
            {
                return(hybridBatch.IsValidStimuli2Category1(id.Stimuli2));
            }
            else
            {
                return(hybridBatch.IsValidStimuli2Category1(id.Stimuli2Image));
            }

        case TSMatchCondition.Stimuli2Category2:
            if (id.Stimuli2Image == null)
            {
                return(hybridBatch.IsValidStimuli2Category2(id.Stimuli2));
            }
            else
            {
                return(hybridBatch.IsValidStimuli2Category2(id.Stimuli2Image));
            }

        default:
            return(false);
        }
    }
Esempio n. 3
0
    TSTaskDescriptor trackTask(StimuliSet set, int stimulusPosition)
    {
        TSTaskDescriptor task = new TSTaskDescriptor();

        task.BlockName        = data.CurrentBatch.ToString();
        task.StimulusPosition = stimulusPosition;
        task.TaskType         = (int)boardTiles[stimulusPosition].GetMatchType + 1;
        if (batch is HybridTaskBatch)
        {
            ImageStimuliSet imageSet    = set as ImageStimuliSet;
            HybridTaskBatch hybridBatch = batch as HybridTaskBatch;
            if (imageSet.HasImage1)
            {
                task.Stimuli1Index = hybridBatch.GetStimuli1Index(imageSet.Stimuli1Img);
            }
            else
            {
                task.Stimuli1Index = hybridBatch.GetStimuli1Index(imageSet.Stimuli1);
            }
            if (imageSet.HasImage2)
            {
                task.Stimuli2Index = hybridBatch.GetStimuli2Index(imageSet.Stimuli2Img);
            }
            else
            {
                task.Stimuli2Index = hybridBatch.GetStimuli2Index(imageSet.Stimuli2);
            }
        }
        else if (set is ImageStimuliSet)
        {
            ImageStimuliSet imageSet   = set as ImageStimuliSet;
            ImageTaskBatch  imageBatch = batch as ImageTaskBatch;
            task.Stimuli1Index = imageBatch.GetStimuli1Index(imageSet.Stimuli1Img);
            task.Stimuli2Index = imageBatch.GetStimuli2Index(imageSet.Stimuli2Img);
        }
        else
        {
            task.Stimuli1Index = batch.GetStimuli1Index(set.Stimuli1);
            task.Stimuli2Index = batch.GetStimuli2Index(set.Stimuli2);
        }
        task.TypeOfBlock = ((int)data.CurrentBatchIndex) + 1;
        TSTaskType taskType = data.IsTaskSwitch ? TSTaskType.TaskSwitch : TSTaskType.TaskRepeat;

        task.IsNewTaskSwitch = (int)taskType;
        data.StartTimer(getTaskKey());
        return(task);
    }