add side channel to let python side know which target got win or lose. fix update time bug. may cause double gameover check.(got another lose after reset the game.)
35 lines
1011 B
C#
35 lines
1011 B
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using Unity.MLAgents;
|
|
using Unity.MLAgents.SideChannels;
|
|
|
|
public class AimBotSideChennelController : MonoBehaviour
|
|
{
|
|
public AimbotSideChannel aimbotSideChannel;
|
|
|
|
public void Awake()
|
|
{
|
|
// We create the Side Channel
|
|
aimbotSideChannel = new AimbotSideChannel();
|
|
|
|
// When a Debug.Log message is created, we send it to the stringChannel
|
|
Application.logMessageReceived += aimbotSideChannel.SendDebugStatementToPython;
|
|
|
|
// The channel must be registered with the SideChannelManager class
|
|
SideChannelManager.RegisterSideChannel(aimbotSideChannel);
|
|
}
|
|
|
|
|
|
// Side Channel
|
|
public void OnDestroy()
|
|
{
|
|
// De-register the Debug.Log callback
|
|
Application.logMessageReceived -= aimbotSideChannel.SendDebugStatementToPython;
|
|
if (Academy.IsInitialized)
|
|
{
|
|
SideChannelManager.UnregisterSideChannel(aimbotSideChannel);
|
|
}
|
|
}
|
|
}
|