//-------------- //-------------- //-------------- public void init(Gajo pai, WalkingMode type) { walkingMode = type; initializeGajo();//super _pai = pai; if (walker.Navigation.agent.isOnNavMesh) { walker.target = pai.gameObject.transform.position; walker.Navigation.startWalking(); } if (walker.Animacao.gameObject.activeSelf) { walker.Animacao.SetBool("walk", true); //mexe } orientation = Vector3.zero; rotSpeed = 0.05f; step = rotSpeed * Time.deltaTime; runningDistance = walker.Navigation.agent.radius * 4; threeQuarterRunningDistance = walker.Navigation.agent.radius * 3; halfRunningDistance = walker.Navigation.agent.radius * 2; isReady = true; }
void SwitchWalkingMode(WalkingMode newMode) { WalkingMode oldMode = walkingMode; walkingMode = newMode; // do stuff if (oldMode == WalkingMode.crouching && newMode != WalkingMode.crouching) { charContr.height = standHeight; charContr.center = new Vector3(0f, standHeight / 2, 0f); if (newMode == WalkingMode.walking) { animDummy.SetTrigger("Walk"); anim.SetTrigger("Walk"); } else { animDummy.SetTrigger("Run"); anim.SetTrigger("Run"); } } else if (newMode == WalkingMode.crouching) { charContr.height = crouchHeight; charContr.center = new Vector3(0f, crouchHeight / 2, 0f); animDummy.SetTrigger("Crouch"); anim.SetTrigger("Crouch"); } }
public WalkMode ToWalkModeConverter(WalkingMode walkingMode) { switch (walkingMode) { case WalkingMode.Default: return WalkMode.Default; case WalkingMode.WithinSubtree: return WalkMode.WithinSubtree; default: throw new ArgumentOutOfRangeException(nameof(walkingMode), walkingMode, null); } }
public IEnumerable<SnmpResult> Walk(SnmpVersion version, string octetString, Oid oid, WalkingMode walkMode, IPAddress ipAddress = null, string hostname = null, string userLoginV3 = null, string passwordV3 = null) { if (ipAddress != null) { return WalkOperation(version, ipAddress, octetString, oid, walkMode); } else if (!string.IsNullOrEmpty(hostname)) { return WalkOperation(version, GetIpAddressFromHostName(hostname), octetString, oid, walkMode); } return null; }
public void ChangeWalkingMode() //walking mode is changed with change of the dropdown's value change { WalkMode = (WalkingMode)ModeDropdown.value; CancelInvoke("ChangeDirection"); //When mode changes, current invokes are cancelled CancelInvoke("ChangeFloatingDirection"); switch (WalkMode) //With the mode new invokes are called { case WalkingMode.NormalWalk: break; case WalkingMode.RandomDirectionWalk: Invoke("ChangeDirection", 0); break; case WalkingMode.RandomDirectionFloatingWalk: Invoke("ChangeFloatingDirection", 0); break; } }
private IEnumerable<SnmpResult> WalkOperation(SnmpVersion version, IPAddress ipAddress, string octetString, Oid oid, WalkingMode walkMode) { _log.Info("SnmpEngine.WalkOperation(): Started"); List<SnmpResult> result; try { if (_timeOut == 0) { _timeOut = SnmpHelper.DefaultTimeOut; } if (string.IsNullOrEmpty(octetString)) { octetString = SnmpHelper.DefaultOctetString; } result = oid.HasChildOids ? Walk(version, ipAddress, octetString, oid, walkMode).ToList() : WalkSingle(version, ipAddress, octetString, oid, walkMode).ToList(); } catch (Exception e) { if (e is TimeoutException) { _log.Error("SnmpEngine.WalkOperation():Timeout Exception caught:", e); throw new SnmpTimeOutException(e.Message, _timeOut); } else if (e is ArgumentOutOfRangeException) { _log.Error("SnmpEngine.WalkOperation():Argument Out Of Range Exception caught:", e); throw new SnmpEngineConvertorException((ArgumentOutOfRangeException)e); } else { _log.Error("SnmpEngine.WalkOperation():Exception caught:", e); throw new SnmpEngineException(e.Message); } } finally { _log.Info("SnmpEngine.WalkOperation(): Finished"); } return result; }
private List<SnmpResult> WalkWithAdditionalCodes(SnmpVersion version, IPAddress ipAddress, string octetString, Oid oid, WalkingMode walkMode) { _log.Info("SnmpEngine.WalkWithAdditionalCodes(): Started oid: " + oid.Value); var list = new List<Variable>(); var results = new List<SnmpResult>(); var codesTable = XmlLoader.InitAdditionalCodes(oid); var codes = (Codes)codesTable[oid.Name]; if (codes != null) { foreach (var code in codes.Code) { try { Messenger.Walk(_converter.ToVersionCodeConverter(version), new IPEndPoint(ipAddress, SnmpHelper.SnmpServerPort), new OctetString(octetString), new ObjectIdentifier(string.Concat(oid.Value, ".", code.Decimal)), list, _timeOut, _converter.ToWalkModeConverter(walkMode)); } catch (Exception e) { _log.Error("SnmpEngine.WalkWithAdditionalCodes(): Exception caught:", e); _log.Error("SnmpEngine.WalkWithAdditionalCodes(): Exception oid: " + string.Concat(oid.Value, ".", code.Decimal)); } if (list.Any()) { _log.Info("SnmpEngine.WalkWithAdditionalCodes(): sucess oid: " + string.Concat(oid.Value, ".", code.Decimal)); _log.Info("SnmpEngine.WalkWithAdditionalCodes(): request result oids: " + list.Count); results.AddRange(list.Select(var => new SnmpResult(new Oid(string.Concat(oid.Value, ".", code.Decimal), code.Name, string.Concat(oid.FullName, ".", code.Name)), var.Data, _converter.ToSnmpDataType(var.Data.TypeCode)))); list.Clear(); } } } codesTable.Clear(); _log.Info("SnmpEngine.WalkWithAdditionalCodes(): Finished"); return results; }
private IEnumerable<SnmpResult> WalkSingle(SnmpVersion version, IPAddress ipAddress, string octetString, Oid oid, WalkingMode walkMode) { _log.Info("SnmpEngine.WalkSingle(): Started oid: " + oid.Value); var list = new List<Variable>(); if (oid.HasAdditionalCodes) { return WalkWithAdditionalCodes(version, ipAddress, octetString, oid, walkMode); } try { Messenger.Walk( _converter.ToVersionCodeConverter(version), new IPEndPoint(ipAddress, SnmpHelper.SnmpServerPort), new OctetString(octetString), new ObjectIdentifier(oid.Value), list, _timeOut, _converter.ToWalkModeConverter(walkMode)); } catch (Exception e) { _log.Error("SnmpEngine.WalkSingle(): Exception caught: ", e); _log.Error("SnmpEngine.WalkSingle(): Exception oid: " + oid.Value); } _log.Info("SnmpEngine.WalkSingle(): Finished"); return list.Select(var => new SnmpResult(new Oid(var.Id.ToString()), var.Data, _converter.ToSnmpDataType(var.Data.TypeCode))); }
private IEnumerable<SnmpResult> WalkBulk(SnmpVersion version, IPAddress ipAddress, int maxBulkRepetitions, string octetString, Oid oid, WalkingMode walkMode) { _log.Info("SnmpEngine.WalkBulk(): Started oid: " + oid.Value); var result = new List<SnmpResult>(); foreach (var childOid in oid.ChildOids) { result.AddRange(!childOid.HasChildOids ? WalkBulkSingle(version, ipAddress, maxBulkRepetitions, octetString, childOid, walkMode) : WalkBulk(version, ipAddress, maxBulkRepetitions, octetString, childOid, walkMode)); } _log.Info("SnmpEngine.WalkBulk(): Finished"); return result; }