Exemplo n.º 1
0
        private object CastLuaResult(SharedVariableTypes variableType, Lua.Result result)
        {
            switch (variableType)
            {
            case SharedVariableTypes.Bool:
                return(result.AsBool);

            case SharedVariableTypes.Float:
                return(result.AsFloat);

            case SharedVariableTypes.Int:
                return(result.AsInt);

            case SharedVariableTypes.String:
                return(result.AsString);

            default:
                return(null);
            }
        }
Exemplo n.º 2
0
        public override void OnEnter()
        {
            string luaCodeString = (luaCode != null) ? luaCode.Value : string.Empty;
            bool   debugFlag     = (debug != null) ? debug.Value : false;

            Lua.Result luaResult = Lua.Run(luaCodeString, debugFlag);
            if ((storeResult != null) && storeResult.useVariable)
            {
                switch (storeResult.Type)
                {
                case VariableType.Bool:
                    storeResult.SetValue(luaResult.AsBool);
                    break;

                case VariableType.Float:
                    storeResult.SetValue(luaResult.AsFloat);
                    break;

                case VariableType.Int:
                    storeResult.SetValue(luaResult.AsInt);
                    break;

                case VariableType.String:
                    storeResult.SetValue(luaResult.AsString);
                    break;

                default:
                    if (DialogueDebug.LogWarnings)
                    {
                        Debug.LogWarning(string.Format("{0}: Variable type must be Bool, Float, Int, or String for Lua code '{1}'", DialogueDebug.Prefix, luaCode));
                    }
                    break;
                }
            }
            Finish();
        }
Exemplo n.º 3
0
 public override void OnEnter()
 {
     if ((variableName == null) || string.IsNullOrEmpty(variableName.Value))
     {
         LogWarning(string.Format("{0}: Variable Name isn't assigned or is blank.", DialogueDebug.Prefix));
     }
     else
     {
         Lua.Result luaResult = DialogueLua.GetVariable(variableName.Value);
         if (storeStringResult != null)
         {
             storeStringResult.Value = luaResult.AsString;
         }
         if (storeFloatResult != null)
         {
             storeFloatResult.Value = luaResult.AsFloat;
         }
         if (storeBoolResult != null)
         {
             storeBoolResult.Value = luaResult.AsBool;
         }
     }
     Finish();
 }
Exemplo n.º 4
0
 void OnVarChanged(LuaWatchItem item, Lua.Result value)
 {
     Interact();
 }