ViNo - Need help modifying a script...

Hi everyone,

I’m french so excuse me in advance for my bad english :wink:

I bought Visual Novel ToolKit and I need to modify it for my project.

I’m sure you have heard this many times but I hope you will still take some your times to help me.

What I need it’s for the example EventTrigger :


I don’t want the player character.

I just want to replace it by a simple mouse click on the objects (Event A, B or C) to set dialogs.

As a Myst like game for example.

I don’t know C# very well so I expect you can tell me how to do that.

I think it’s those scripts to modify :

TriggerVolume.cs

using UnityEngine;
using System.Collections;

namespace ViNoToolkit{

    /// <summary>
    /// Trigger volume event data.
    /// </summary>
    public class TriggerVolumeEventData : ViNoEventData{
        public Collider collider;
    }

    /// <summary>
    /// Trigger volume. please attach this script to a player.
    /// </summary>
    public class TriggerVolume : MonoBehaviour {

        private TriggerVolumeEventData m_EvtData = new TriggerVolumeEventData();    // Cached Event Data.

        void OnTriggerEnter(Collider other){
        // Debug.Log ( "EvtType:" + m_EvtData.eventType );

            m_EvtData.eventType = "OnTriggerEvent";
            m_EvtData.collider = other;

            // EventManager will send message to event receiver.
            ViNoEventManager.Instance.TriggerEvent ( m_EvtData.eventType , m_EvtData );
        }

    }

}

and

TriggerVolumeEventReceiver.cs

using UnityEngine;
using System.Collections;

namespace ViNoToolkit{

/// <summary>
/// Sample TriggerVolume event receiver.
/// </summary>
    public class TriggerVolumeEventReceiver : MonoBehaviour {
    [System.Serializable]
    public class TriggerVolEventEntry{
        public ViNode node;
        public GameObject triggerVolume;
    }

    public ScenarioNode scenario;
    public TriggerVolEventEntry[] events;

    private bool m_LockTrigger;
  
    void OnTriggerEvent( ViNoEventData data ){
        TriggerVolumeEventData tdata = data as TriggerVolumeEventData;
        if (tdata == null) {
            return;
        }

        // If event is already triggered, return.
        if( ! m_LockTrigger ){
            m_LockTrigger = true;
        }
        else{
            return;
        }

        Collider col = tdata.collider;

        Debug.Log( "OnTriggerEvent" );

        foreach( TriggerVolEventEntry ent in events ){
            if( col.gameObject.name.Equals( ent.triggerVolume.name ) ){
                Debug.Log ( "Play from : " + ent.node.GetNodeLabel() );
                scenario.PlayFrom( ent.node.GetNodeLabel() );
                break;
            }
        }
    }

    /// <summary>
    /// Raises the finish event event.
    /// </summary>
    void OnFinishEvent(){
        Debug.Log( "OnFinishEvent" );
        m_LockTrigger = false;
    }
  
    void Start () {
        scenario.CompileAndSetCode();
    }

}

}

I will be very gratefull if you can help me.

Best regards!

Nevermind, Visual Novel Toolkit Support reply me and help me.

It was more complicated than I thought.

Thanks again by the way.

Take care…